İmzalı Yapılandırmayı Uygulama

İmzalı Yapılandırma özelliği, SDK dışı arayüz kısıtlamalarının yapılandırmasını APK'lara yerleştirmenize olanak tanır. Bu sayede, AndroidX'in bunları güvenli bir şekilde kullanabilmesi için belirli SDK dışı arayüzleri kara listeden kaldırabilirsiniz. Bu sayede AndroidX ekibi, daha önce yayınlanmış Android sürümlerine yeni özellikler için destek ekleyebilir. Android 10 ve sonraki sürümlerde desteklenir.

İmzalı Yapılandırma'yı doğru şekilde desteklemek, AndroidX kitaplıklarının gelecekte cihazlarda düzgün şekilde çalışmasını sağlar.

Bu özellik özelleştirilemez. AOSP'de tam olarak desteklenir ve desteklenmek için OEM çalışması gerektirmez.

Örnekler ve kaynak

Özellik uygulaması, frameworks/base/services/core/java/com/android/server/signedconfig adresindeki sistem sunucusundadır. CtsSignedConfigHostTestCases CTS testi, örnek kullanım ve cts/hostsidetests/signedconfig/app/version1_AndroidManifest.xml'da örnek bir yapılandırma içerir.

Uygulama

Özelliği desteklemek için herhangi bir işlem yapmanız gerekmez ve özel donanım gereksinimleri yoktur.

Bu özellik, APK'lara yapılandırma ve imza yerleştirmek için iki uygulama meta verisi anahtarı kullanır. Bu anahtarlar android.settings.global ve android.settings.global.signature'dır. AndroidX kitaplıkları gelecekte SDK dışı arayüzlerin kara listeden kaldırılmasını gerektirirse veya gerektirdiğinde bu anahtarların değerleri Android ekibi tarafından ve/veya AndroidX kapsamında yayınlanacaktır.

APK meta veri anahtarları android.settings.global ve android.settings.global.signature, base64 kodlu veriler içerir. android.settings.global anahtarının değeri, SettingsProvider'teki genel ayarlara uygulanacak JSON biçiminde yapılandırma değerleridir. android.settings.global.signature değerinin değeri, JSON verilerinin ECDSA-p256 imzasıdır. İmza, yapılandırma verilerinin kaynağını doğrulamak için kullanılır.

Özellik kullanıcılara gösterilmez.

Özelleştirme

Bu özellik özelleştirme için tasarlanmamıştır. OEM'lerin, tuşları değiştirmek de dahil olmak üzere bu özelliği değiştirmesi önerilmez. Bu dosyada yapılan değişiklikler, AndroidX'in etkilenen cihazlarda gelecekte düzgün çalışmamasına neden olabilir.

Doğrulama

CTS testi CtsSignedConfigHostTestCases, özellik uygulamasını doğrular.

Uygun bir APK yükleyerek ve adb logcat çıktısını inceleyerek de özelliği manuel olarak test edebilirsiniz:

$ adb install CtsSignedConfigTestAppV1.apk
...
$ adb logcat
...
I SignedConfig: Verified config using production key
...