İmzalı Yapılandırmayı Uygulama

İmzalı Yapılandırma özelliği, APK'lara SDK olmayan arabirim kısıtlamalarının yapılandırmasını yerleştirmeye izin verir. Bu, AndroidX'in güvenli bir şekilde kullanmasına izin vermek için belirli SDK olmayan arayüzlerin kara listeden kaldırılmasına izin verir. Bu, AndroidX ekibinin daha önce yayınlanmış olan Android sürümlerinde yeni özellikler için destek eklemesine olanak tanır. Android 10 ve sonraki sürümlerde desteklenir.

Uygun şekilde desteklenen Signed Config, AndroidX kitaplıklarının gelecekte cihazlarda doğru şekilde çalışmasını sağlar.

Bu özelliğin özelleştirilmesi mümkün değildir. AOSP'de tam olarak desteklenir ve bunu desteklemek için OEM çabası gerektirmez.

Örnekler ve kaynak

Özellik uygulama sistem sunucu olan frameworks/base/services/core/java/com/android/server/signedconfig . CTS Test CtsSignedConfigHostTestCases örneğin kullanım ve örnek konfigürasyonu içerir cts/hostsidetests/signedconfig/app/version1_AndroidManifest.xml .

uygulama

Özelliği desteklemek için herhangi bir çaba gerekmez ve belirli bir donanım gereksinimi yoktur.

Bu özellik, yapılandırmayı gömmek için iki uygulama meta veri anahtarı ve APK'ların içine bir imza kullanır. Bunlar anahtarları android.settings.global ve android.settings.global.signature . AndroidX kitaplıkları gelecekte SDK olmayan arayüzlerin kara listeden kaldırılmasını gerektiriyorsa veya gerektiğinde, bu anahtarların değerleri Android ekibi tarafından ve/veya AndroidX'in bir parçası olarak yayınlanacaktır.

APK meta tuşları android.settings.global ve android.settings.global.signature hem taban-64 kodlanmış veriler içerir. Anahtar değeri android.settings.global JSON kodlanmış yapılandırma değerleri küresel ayarlarına uygulanacak olan SettingsProvider . Değeri android.settings.global.signature JSON bir veri ECDSA-p256 imzadır. İmza, yapılandırma verilerinin kaynağını doğrulamak için kullanılır.

Özellik kullanıcı tarafından görülemez.

özelleştirme

Özellik özelleştirme için tasarlanmamıştır. OEM'lerin, anahtarları değiştirmek de dahil olmak üzere özelliği değiştirmeleri önerilmez. Üzerinde yapılacak herhangi bir değişiklik, AndroidX'in gelecekte etkilenen cihazlarda düzgün çalışmamasına neden olabilir.

doğrulama

CTS testi CtsSignedConfigHostTestCases özelliği uygulanmasını doğrular.

Ayrıca, uygun bir APK yükleme ve denetleyerek özelliğini elle test edebilirsiniz adb logcat çıkışı:

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