Android Uygulamamızda Intent’i Karşılayacak Uygulama Denetimi

By | 27 January 2016

Android Intent’lerin uygulamalarca(Telefon, e-posta, takvim gibi) karşılık bulacağını garanti ediyor olsa da biz Intent’i çağırmadan önce mutlaka bir doğrulama adımı eklemeliyiz. Çünkü eğer Intent’i çağırdığımızda cihazda belirttiğimiz işlemi yapacak bir uygulama yoksa, bizim uygulamamız çökecektir. Intent’e yanıt verecek bir Activity’nin olup olmadığını doğrulamak için queryIntentActivities() methodunu çağırarak Intent’i karşılayacak olan uygulama listesini alabiliriz. Dönen liste boş değil ise güvenle devam edebiliriz.

PackageManager packageManager = getPackageManager();
List<ResolveInfo> activities = packagaManager.queryIntentActivities(intent, 0);
boolean isIntentSafe = activities.size() > 0;

Eğer isIntentSafe değeri true ise en az bir uygulama Intent’e cevap verecektir.Eğer dönen cevap false ise almak istediğimiz eylemi gerçekleştirebilecek bir uygulama bulunmamaktadır.

Sonuç

Activity’niz ilk başladığında bu kontrolü yapmamız, uygulamanın crash olmasını engelleyecektir ve ona göre aksiyoun almamızı sağlayabiliriz. Anlatacaklarım şimdilik bu kadar, umarım faydalı olur. Bir daha ki yazımda görüşmek üzere… 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

*