Android App Example Call External App

Android Uygulamasından Harici Uygulamayı Çağırma

Android uygulamalarının diğer uygulamalarla etkileşime girmesine olanak tanıyan birkaç yol vardır. Bunlardan biri, Android’in Intent sınıfını kullanmaktır. Intent, bir uygulamanın başka bir uygulamaya mesaj göndermesini sağlayan bir nesnedir. Bu mesaj, başka bir uygulamayı başlatma, bir etkinlik başlatma veya bir yayın gönderme gibi çeşitli şeyleri yapabilir.

Harici bir uygulamayı çağırmak için, öncelikle bir Intent nesnesi oluşturmanız gerekir. Bunu yapmak için, Intent sınıfının statik newIntent() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod bir e-posta uygulamasını başlatmak için bir Intent nesnesi oluşturur:

Intent intent = new Intent(Intent.ACTION_SEND);

Intent nesnesini oluşturduktan sonra, mesajınızı ayarlamanız gerekir. Bunu yapmak için, Intent nesnesinin çeşitli yöntemlerini kullanabilirsiniz. Örneğin, aşağıdaki kod e-posta uygulamasına bir e-posta adresi ve bir e-posta konusu ayarlar:

intent.putExtra(Intent.EXTRA_EMAIL, "[email protected]");
intent.putExtra(Intent.EXTRA_SUBJECT, "Merhaba");

Mesajınızı ayarladıktan sonra, Intent nesnesini kullanarak başka bir uygulamayı başlatabilirsiniz. Bunu yapmak için, Intent nesnesinin startActivity() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod e-posta uygulamasını başlatır:

startActivity(intent);

Harici bir uygulamayı çağırmak için Intent sınıfını kullanmanın yanı sıra, Android’in diğer sınıflarını da kullanabilirsiniz. Örneğin, Android’in Context sınıfını kullanarak başka bir uygulamanın paket adını alabilirsiniz. Bunu yapmak için, Context nesnesinin getPackageName() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod geçerli uygulamanın paket adını alır:

String packageName = getPackageName();

Android’in PackageManager sınıfını kullanarak başka bir uygulamanın yüklü olup olmadığını kontrol edebilirsiniz. Bunu yapmak için, PackageManager nesnesinin getInstalledPackages() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod geçerli cihazda yüklü olan tüm uygulamaların listesini alır:

List<PackageInfo> packages = getPackageManager().getInstalledPackages(0);

Android’in ActivityManager sınıfını kullanarak başka bir uygulamanın çalışıp çalışmadığını kontrol edebilirsiniz. Bunu yapmak için, ActivityManager nesnesinin getRunningTasks() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod geçerli cihazda çalışan tüm uygulamaların listesini alır:

List<ActivityManager.RunningTaskInfo> tasks = ((ActivityManager) getSystemService(Context.ACTIVITY_SERVICE)).getRunningTasks(1);

Faydalı Siteler ve İlgili Dosyalar


Yayımlandı