Android Marshmallow’da Yenilenen İzin Sistemi


Android Marshmallow öncesinde uygulama izin sistemi tek bir akıştan çalışıyordu ve uygulama yüklenirken alınan izinler uygulama hayatı boyunca devam ediyordu.


Bu durum uygulamayı yayınlayan açısından iyi olsa da kullanıcılar açısından sorun teşkil edebiliyordu. Android Marshmallow ile birlikte kullanıcı, uygulama yüklüyken uygulamanın kullandığı tehlikeli kategorisinde olan izinleri iptal edebilecek.


Peki bu izin iptal edildi ancak sizin uygulamanızın o izne ihtiyacı var ve o izin olmadan işlem yapamıyorsunuz. Bu durumda ne olacak ?
Android’in sunduğu yeni çözüm Runtime Permissions. Uygulama çalışırken kullanıcıya açılan bildirim ekranıyla bu izin yeniden istenir, kullanıcı o izni verirse ise devam edebilirsiniz.


İzin Kategorileri
Android sisteminde kullanılan izinler 2 kategoriden oluşuyor,
Dangerous (Tehlikeli)
Normal
Aşağıda tehlikeli izinleri görebiliriz.


Runtime Permissions
Uygulama çalışırken bu izni nasıl alacağız ? Aşağıdaki kod örneği üzerinden gidelim,




Eğer kullanıcı “Bir daha sorma” kutusunu işaretleyip reddederse, bir sonraki izin isteme durumunda kullanıcıya, ayarlardan bu izni açmasını söylemeniz gerekebilir.
Peki manifest.xml dosyasında ne gibi değişiklikler yapmamız gerekecek ?
<uses-sdk
android:minSdkVersion=”19"
android:targetSdkVersion=”23"/>
<uses-permission android:name=”android.permission.READ_CONTACT”/>
Sadece targetSdkVersion’u 23 yapmanız yeterli. Bu sayede siz Android’in son surumu olan (Android N’yi ayrı tutuyorum) Marsmallow’u desteklediğinizi belirtiyorsunuz. İzinler kısmında olan READ_CONTACT izni ise aynen duruyor, silmiyoruz.
Genel hatlarıyla Android Marsmallow ile birlikte gelen Runtime Permission yeniliğini inceledik. Bir sonraki yazımda görüşmek dileğiyle.
Sayanora.