Android ekranına uygulamanın kısayolunu oluşturma

FireMonkey ve Mobil uygulama (iOS, Android, Windows Phone) ile ilgili sorularınızı bu foruma sorabilirsiniz.
Cevapla
Kullanıcı avatarı
ayhandemirtas
Üye
Mesajlar: 114
Kayıt: 01 Oca 2008 10:02
Konum: Eskişehir

Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen ayhandemirtas »

Arkadaşlar merhaba,
Resim
Xe5 ile yazılan uygulamanın Android cihazlarına yüklendiğinde
otomatik olarak Ekrana kısayolunun nasıl oluşturulacağını bilen arkadaş var mı?


-------
Bu sitede biraz tarif etmiş.
http://www.fmxexpress.com/install-short ... iremonkey/

StringToJString(‘com.embarcadero.HeaderFooterApplication’)
bölümünüm özelleştirilmesini söylüyor.
Nereden yapılacağını bulamadım.

uses kısmına bunun eklenmesini istiyor. burada problem yok.

Kod: Tümünü seç

Androidapi.JNI.GraphicsContentViewText, FMX.Helpers.Android,
Androidapi.JNI.JavaTypes, FMX.Platform.Android, AndroidApi.JniBridge, AndroidApi.Jni.App,
AndroidAPI.jni.OS;

devamında da

Kod: Tümünü seç

{$IFDEF ANDROID}
var
ShortcutIntent: JIntent;
addIntent: JIntent;
wIconIdentifier : integer;
wIconResource : JIntent_ShortcutIconResource;
{$ENDIF}
begin
{$IFDEF ANDROID}

ShortcutIntent := TJIntent.JavaClass.init(SharedActivityContext, SharedActivityContext.getClass);
ShortcutIntent.setAction(TJIntent.JavaClass.ACTION_MAIN);

addIntent := TJIntent.Create;
addIntent.putExtra(TJIntent.JavaClass.EXTRA_SHORTCUT_INTENT, TJParcelable.Wrap((shortcutIntent as ILocalObject).GetObjectID));// here we need to cast the intent as it’s not done in delphi by default, not like java
addIntent.putExtra(TJIntent.JavaClass.EXTRA_SHORTCUT_NAME, StringToJString(Application.Title));
addIntent.setAction(StringToJString(‘com.android.launcher.action.INSTALL_SHORTCUT’));
// get icon resource identifier
wIconIdentifier := SharedActivity.getResources.getIdentifier(StringToJString(‘ic_launcher’), StringToJString(‘drawable’), StringToJString(‘com.embarcadero.HeaderFooterApplication’)); // if the app name change, you must change the package name
wIconResource := TJIntent_ShortcutIconResource.JavaClass.fromContext(SharedActivityContext, wIconIdentifier);
// set icon for shortcut
addIntent.putExtra(TJIntent.JavaClass.EXTRA_SHORTCUT_ICON_RESOURCE, TJParcelable.Wrap((wIconResource as ILocalObject).GetObjectID));

SharedActivityContext.sendBroadcast(addIntent);

{$ENDIF}
uses kısmının altından devam edilecek diye düşünüyorum.
Sanırım ilk form için geçerli.
daha pratik bilgisi olan varsa veya bunun nasıl kullanılacağını bilen varsa ve paylaşım yaparsa sevinirim.,
Saygı ve sevgilerimle
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen SimaWB »

O sayfadaki örneği indirip denemişsinizdir sanırım. Örnekteki butona bastığınızda kısayol oluşturuyor. StringToJString içersinde siz sadece kendi uygulamanızın package ismini yazacaksınız. (Project Options -> Version Info -> package).
Gerçek bir uygulamada yapılması gereken tekşey kalıyor: butona basınca çalışan bu kodu program başlarken ve sadece 1 defaya mahsus olmak üzere çalıştırmak. Bunun için ana formun OnCreate'inde bu kodu çalıştırabilirsiniz. Ama sadece bir kez çalışması için önlem almalısınız. Mesela veritabanı kullanıyorsanız oradaki bir değere göre buna karar verin. Yada kısayol ilk oluşturulduğunda bir dosya oluşturun. Bundan sonra o dosya var mı yok mu kontrol edin vs. bir çok yöntem var.
There's no place like 127.0.0.1
Hashirama
Üye
Mesajlar: 81
Kayıt: 26 Kas 2013 03:42

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen Hashirama »

Googleplay de uygulamanızı yayınladığınız da kendisi otomatik kısayol oluşturuyor, fazladan bir şeye ihtiyacınız yok.
Kullanıcı avatarı
ayhandemirtas
Üye
Mesajlar: 114
Kayıt: 01 Oca 2008 10:02
Konum: Eskişehir

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen ayhandemirtas »

Hashirama yazdı:Googleplay de uygulamanızı yayınladığınız da kendisi otomatik kısayol oluşturuyor, fazladan bir şeye ihtiyacınız yok.
Denedim Kısayolu olusturmadi diye hatırladım.
Neyse haftaya uygulamayı yukleyecegim.
Uygulama bitmek uzere. Teşekkür
SimaWB yazdı:O sayfadaki örneği indirip denemişsinizdir sanırım. Örnekteki butona bastığınızda kısayol oluşturuyor. StringToJString içersinde siz sadece kendi uygulamanızın package ismini yazacaksınız. (Project Options -> Version Info -> package).
Farketmedim. Dikkatli bakacağım. Google play de çalışmazsa
Gösterdiğiniz yolu deneyecegim.
Sonucu bildirecegim.
Teşekkürler.
Kullanıcı avatarı
barisatalay
Üye
Mesajlar: 398
Kayıt: 02 Nis 2013 05:43
İletişim:

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen barisatalay »

ayhandemirtas yazdı: Denedim Kısayolu olusturmadi diye hatırladım.
İmkansızz :shock:

https://play.google.com/store/apps/deta ... .mangakafe

İsterseniz indirip bir deneyin XE5 ile hazırladığım versiyonudur Kısayolun çıkmaması gibi bir ihtimal yok.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen SimaWB »

barisatalay yazdı:
ayhandemirtas yazdı: Denedim Kısayolu olusturmadi diye hatırladım.
İmkansızz :shock:
İmkansız demesek :)
Kısayol oluşturma işlemi Google Play uygulamasındaki ayarlardan değiştirilebiliyormuş :
http://www.hashtagandroid.com/tips-tric ... ome-screen

Ayrıca yazılan uygulamanın izinleriyle(permission) alakalı bir durum da olabilir: INSTALL_SHORTCUT
Buradakileri yanlış anlamadıysam uygulamanıza kısayol oluşturabilmesi için bu izni vermeniz gerekiyor.

Kod: Tümünü seç

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
Şuanda deneyebileceğim bir Delphi yok. Bu yüzden Delphi uygulamalarında varsayılan olarak bu izin verilmiş mi bilmiyorum. Yada Delphi'de böyle bir ayar var mı onu da bilmiyorum.
There's no place like 127.0.0.1
Kullanıcı avatarı
barisatalay
Üye
Mesajlar: 398
Kayıt: 02 Nis 2013 05:43
İletişim:

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen barisatalay »

SimaWB yazdı:
barisatalay yazdı:
ayhandemirtas yazdı: Denedim Kısayolu olusturmadi diye hatırladım.
İmkansızz :shock:
İmkansız demesek :)
Kısayol oluşturma işlemi Google Play uygulamasındaki ayarlardan değiştirilebiliyormuş :
http://www.hashtagandroid.com/tips-tric ... ome-screen

Ayrıca yazılan uygulamanın izinleriyle(permission) alakalı bir durum da olabilir: INSTALL_SHORTCUT
Buradakileri yanlış anlamadıysam uygulamanıza kısayol oluşturabilmesi için bu izni vermeniz gerekiyor.

Kod: Tümünü seç

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
Şuanda deneyebileceğim bir Delphi yok. Bu yüzden Delphi uygulamalarında varsayılan olarak bu izin verilmiş mi bilmiyorum. Yada Delphi'de böyle bir ayar var mı onu da bilmiyorum.
Haklı olabilirsiniz sonuçta imkansız diye birşey yoktur :lol:
Ama mesela INSTALL_SHORTCUT izinlerini şimdiye kadar hiçbi uygulamamda vermedim Ya delphi yada Google play birşeyler yapıyor olabilir :)
Kullanıcı avatarı
ayhandemirtas
Üye
Mesajlar: 114
Kayıt: 01 Oca 2008 10:02
Konum: Eskişehir

Re: Android ekranına uygulamanın kısayolunu oluşturma

Mesaj gönderen ayhandemirtas »

:D arkadaşlar uygulamayı 2 defa indirip denedim
ikisinde de kısayolunu otomatik olarak ekrana ekledi.
Teşekkürler.
Cevapla