اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release بدلاً من aosp-main لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
القائمة المسموح بها للمعرّفات الفريدة المشتركة التي وقّعت عليها المنصة
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
التطبيقات الموقَّعة من النظام هي التطبيقات التي تشارك شهادة التوقيع (android) نفسها (أو شهادة متوافقة) مع حزمة النظام. ويمكن أن يكون التطبيق الموقَّع من النظام هو
تطبيق نظام (موجود في قسم صورة النظام) أو تطبيق غير نظام.
أرقام تعريف المستخدمين المشترَكة الموقَّعة من النظام هي أرقام تعريف مستخدمين مشترَكة (android:sharedUserId) تحتوي على تطبيقات موقَّعة من النظام. النُسخ القابلة لتصحيح الأخطاء هي النُسخ التي يعرض فيها الرمز البرمجي android.os.Build.isDebuggable() القيمة true، مثل النُسخ userdebug أو eng.
في السابق، لم يكن بإمكان الشركات المصنّعة للأجهزة التحكّم كثيرًا في التطبيقات غير المخصّصة للنظام والتي تم توقيعها باستخدام توقيع المنصة والتي يمكنها الانضمام إلى رقم تعريف مستخدم مشترَك تم توقيعه باستخدام توقيع المنصة. بدءًا من الإصدار
15 من نظام التشغيل Android، يمكن للمصنعين السماح صراحةً لتطبيقات
غير النظامية الموقَّعة من النظام بالانضمام إلى أرقام تعريف المستخدمين المشترَكة الموقَّعة من النظام في ملفات ملف XML
لإعدادات النظام في الدليل /etc/permissions. إذا لم تتم إضافة تطبيق غير برمجي
موقَّع من النظام إلى القائمة المسموح بها لرقم تعريف مستخدم مشترَك موقَّع من النظام، وواصل التطبيق
محاولة الانضمام إلى رقم التعريف المشترَك الموقَّع من النظام (مع android:sharedUserId
في البيان)، لا يمكن تثبيت هذا التطبيق على الإصدارات غير القابلة لتصحيح الأخطاء.
للعثور على إدخال مفقود في القائمة المسموح بها، حاوِل تثبيت التطبيق غير المرتبط بالنظام والذي تم توقيعه على النظام على إصدار لا يمكن تصحيح أخطاءه وتحقَّق مما إذا كان لا يزال بإمكانك تثبيته. إذا لم يكن الأمر كذلك، يمكنك
فحص سجلات الجهاز بحثًا عن تنسيق رسائل التحذير التالي:
Non-preload app {PACKAGE_NAME} signed with platform signature and joining shared uid: {SHARED_UID_NAME}
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],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}"]]