27 Mart 2025'ten itibaren AOSP'yi derlemek ve AOSP'ye katkıda bulunmak için aosp-main yerine android-latest-release kullanmanızı öneririz. Daha fazla bilgi için AOSP'de yapılan değişiklikler başlıklı makaleyi inceleyin.
Platform tarafından imzalanan paylaşılan UID izin verilenler listesi
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Platform tarafından imzalanan uygulamalar, platform paketiyle (android) aynı (veya uyumlu) imzalama sertifikasını paylaşan uygulamalardır. Platform tarafından imzalanan uygulamalar, sistem uygulaması (sistem resmi bölümünde bulunur) veya sistem dışı uygulama olabilir. Platform tarafından imzalanan paylaşılan UID'ler, platform tarafından imzalanan uygulamaları içeren paylaşılan UID'lerdir (android:sharedUserId). Hata ayıklama yapılabilir derlemeler, android.os.Build.isDebuggable() döndüren true derlemelerdir (ör. userdebug veya eng derlemeleri).
Geçmişte cihaz üreticileri, platform imzalı paylaşılan bir UID'ye hangi sistem dışı platform imzalı uygulamaların katılabileceği konusunda çok az kontrole sahipti. Android 15'ten itibaren üreticiler, platform tarafından imzalanan sistem dışı uygulamaların /etc/permissions dizinindeki sistem yapılandırma XML dosyalarında platform tarafından imzalanan paylaşılan UID'lere katılmasına açıkça izin verebilir. Platform imzalı bir sistem dışı uygulama, platform imzalı paylaşılan UID'nin izin verilenler listesine eklenmezse ve uygulama yine de platform imzalı paylaşılan UID'ye katılmaya çalışırsa (manifest dosyasında android:sharedUserId ile birlikte) bu uygulama, hata ayıklama yapılamayan derlemelere yüklenemez.
Eksik izin verilenler listesi girişini bulmak için platform tarafından imzalanan sistem dışı uygulamanızı hata ayıklama yapılamayan bir derlemeye yüklemeyi deneyin ve uygulamanın hâlâ yüklenip yüklenemediğini kontrol edin. Aksi takdirde, cihaz günlüklerinde aşağıdaki uyarı mesajı biçimini arayabilirsiniz:
Non-preload app {PACKAGE_NAME} signed with platform signature and joining shared uid: {SHARED_UID_NAME}
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-27 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-07-27 UTC."],[],[],null,["# Platform-signed shared UID allowlist\n\nPlatform-signed apps are apps sharing the same (or compatible) signing\ncertificate with the platform package (`android`). A platform-signed app can be\na system app (located on a system image partition), or a nonsystem app.\nPlatform-signed shared UIDs are shared UIDs (`android:sharedUserId`) that\ncontain platform-signed apps. Debuggable builds are builds whose\n`android.os.Build.isDebuggable()` return `true`, such as `userdebug` or `eng`\nbuilds.\n\nHistorically, device manufacturers had little control over which platform-signed\nnonsystem apps could join a platform-signed shared UID. Starting in Android\n15, manufacturers can explicitly allow platform-signed\nnonsystem apps to join platform-signed shared UIDs in the system configuration\nXML files in the `/etc/permissions` directory. If a platform-signed nonsystem\napp isn't added to the allowlist for a platform-signed shared UID, and the app\nstill tries to join the platform-signed shared UID (with `android:sharedUserId`\nin its manifest), that app can't be installed on nondebuggable builds.\n| **Note:** The allowlist isn't enforced on debuggable builds to facilitate easier testing.\n| **Note:** Platform-signed system apps aren't affected by this change.\n\nAdd an allowlist\n----------------\n\nYou can list allowlists for apps in a single XML file or in multiple XML files,\nsimilar to\n[`frameworks/base/data/etc/package-shareduid-allowlist.xml`](https://cs.android.com/android/platform/superproject/+/android-latest-release:frameworks/base/data/etc/package-shareduid-allowlist.xml): \n\n \u003c!--\n This XML defines an allowlist for packages that want to join a particular shared-uid.\n If a non-system package that is signed with platform signature, is trying to join a particular\n shared-uid, and not in this list, the installation will fail.\n\n - The \"package\" XML attribute refers to the app's package name.\n - The \"shareduid\" XML attribute refers to the shared uid name.\n --\u003e\n\n \u003cconfig\u003e\n \u003callow-package-shareduid package=\"android.test.settings\" shareduid=\"android.uid.system\" /\u003e\n \u003c/config\u003e\n\nFind missing allowlist\n----------------------\n\nTo find a missing allowlist entry, try to install your platform-signed nonsystem\napp on a nondebuggable build and check if it can still be installed. If not, you\ncan inspect device logs for the following format of warning messages: \n\n Non-preload app {PACKAGE_NAME} signed with platform signature and joining shared uid: {SHARED_UID_NAME}"]]