اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release بدلاً من aosp-main لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
القائمة المسموح بها للمعرّفات الفريدة المشتركة التي وقّعت عليها المنصة
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
التطبيقات الموقَّعة من خلال النظام الأساسي هي تطبيقات تشارك شهادة التوقيع نفسها (أو شهادة متوافقة) مع حزمة النظام الأساسي (android). ويمكن أن يكون التطبيق الموقَّع من خلال النظام الأساسي تطبيقًا تابعًا للنظام (يقع في قسم صورة النظام) أو تطبيقًا غير تابع للنظام. أما أرقام تعريف المستخدمين المشتركة الموقَّعة من خلال النظام الأساسي، فهي أرقام تعريف مستخدمين مشتركة (android:sharedUserId) تحتوي على تطبيقات موقَّعة من خلال النظام الأساسي. الإصدارات التي يمكن تصحيح أخطائها هي الإصدارات التي تعرض true عند طلب android.os.Build.isDebuggable()، مثل إصدارات userdebug أو eng.
في السابق، لم يكن لدى الشركات المصنّعة للأجهزة سوى تحكّم محدود في التطبيقات غير التابعة للنظام والتي تم توقيعها من خلال المنصة، والتي يمكنها الانضمام إلى رقم تعريف مستخدم مشترَك تم توقيعه من خلال المنصة. اعتبارًا من Android 15، يمكن للمصنّعين السماح بشكل صريح للتطبيقات غير التابعة للنظام والموقَّعة من خلال النظام بالانضمام إلى معرّفات UID المشترَكة والموقَّعة من خلال النظام في ملفات XML الخاصة بإعدادات النظام ضمن الدليل /etc/sysconfig. إذا لم تتم إضافة تطبيق غير تابع للنظام وموقّع من المنصة إلى القائمة المسموح بها لرقم تعريف مستخدم مشترَك موقّع من المنصة، وحاول التطبيق الانضمام إلى رقم تعريف المستخدم المشترَك الموقّع من المنصة (باستخدام android:sharedUserId في ملف البيان)، لن يتم تثبيت هذا التطبيق على الإصدارات غير القابلة للتصحيح.
للعثور على إدخال مفقود في القائمة المسموح بها، حاوِل تثبيت تطبيق غير تابع للنظام وموقّع من المنصة على إصدار غير قابل للتصحيح، وتحقَّق مما إذا كان لا يزال بإمكانك تثبيته. إذا لم يكن الأمر كذلك، يمكنك فحص سجلات الجهاز بحثًا عن تنسيق رسائل التحذير التالي:
Non-preload app {PACKAGE_NAME} signed with platform signature and joining shared uid: {SHARED_UID_NAME}
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-09-04 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","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-09-04 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Platform-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/sysconfig` directory. If a platform-signed nonsystem app\nisn't added to the allowlist for a platform-signed shared UID, and the app still\ntries to join the platform-signed shared UID (with `android:sharedUserId` in its\nmanifest), 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\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\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}"]]