Platform imzalı uygulamalar aynı (veya uyumlu) imzalamayı paylaşan uygulamalardır
sertifikanın platform paketiyle (android
) gönderilmesini sağlayın. Platform imzalı uygulamalar
bir sistem uygulaması (sistem görüntüsü bölümünde bulunur) veya sistem dışı bir uygulama.
Platform imza izinleri, platform paketi tarafından tanımlanan izinlerdir
signature
koruma seviyesine de sahip. Hata ayıklanabilir derlemeler, derlemelerdir
android.os.Build.isDebuggable()
değeri true
döndüren, örneğin userdebug
veya
eng
derleme.
Geçmişte cihaz üreticilerinin hangi platform üzerinde çok az kontrolü vardı.
Platform imzalı sistem dışı uygulamalara signature
izinleri verilebilir.
Android 15'ten itibaren üreticiler
şurada sistem yapılandırması XML dosyalarında platform imza izinleri ver:
/etc/permissions
dizini. Platform imzalı sistem dışı bir uygulama
bir platform imza izni için izin verilenler listesine eklenirse, bu izin
uygulama, hata ayıklanamayan derlemelerde platform imzalanmamışsa.
İzin verilenler listesi ekleyin
Uygulamalar için izin verilenler listelerini tek bir XML dosyasında veya birden fazla yerde listeleyebilirsiniz.
frameworks/base/etc/permissions
dizininde bulunan XML dosyaları:
/etc/permissions/signature-permissions-OEM_NAME.xml
/etc/permissions/signature-permissions-DEVICE_NAME.xml
İçeriklerin düzenlenme şekliyle ilgili katı bir kural yoktur. Cihaz uygulamaları uygun uygulamalar ve bunların yönetim gereksinimleri, izin verilenler listesine eklenir.
İzin verilenler listesini özelleştirme
AOSP, gerektiğinde özelleştirebileceğiniz bir izin verilenler listesi uygulaması içerir. ile benzer ayrıcalıklı izin verilenler listesi ekleyin. Örneğin, örnek:
<!--
~ This XML file declares which platform signature permissions to grant to
~ platform signed nonsystem apps.
-->
<permissions>
<signature-permissions package="com.android.example">
<permission name="android.permission.READ_DEVICE_CONFIG"/>
...
</signature-permissions>
...
</permissions>
Eksik izinleri bulma
Eksik izinleri bulmak için platform imzalı uygulamanızı yükleyin ve cihazı inceleyin günlükler:
Signature permission {PERMISSION_NAME} for package {PACKAGE_NAME} ({PACKAGE_PATH}) not in signature permission allowlist
Sistem, hata ayıklanabilir derlemelerde yine de izin verebilir ancak
user
derlemeleri gibi hata ayıklama yapılamayan derlemeler