از 27 مارس 2025، توصیه می کنیم از android-latest-release به جای aosp-main برای ساختن و کمک به AOSP استفاده کنید. برای اطلاعات بیشتر، به تغییرات AOSP مراجعه کنید.
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
برنامههای دارای امضای پلتفرم، برنامههایی هستند که گواهی امضای یکسان (یا سازگار) را با بسته پلتفرم ( android ) به اشتراک میگذارند. یک برنامه با امضای پلت فرم می تواند یک برنامه سیستمی (واقع در یک پارتیشن تصویر سیستم) یا یک برنامه غیر سیستمی باشد. UIDهای مشترک با امضای پلتفرم، UIDهای مشترک ( android:sharedUserId ) هستند که حاوی برنامههای امضا شده در پلتفرم هستند. بیلدهای قابل اشکال زدایی بیلدهایی هستند که android.os.Build.isDebuggable()true را برمی گرداند، مانند userdebug یا eng .
از لحاظ تاریخی، سازندگان دستگاه کنترل کمی بر روی اینکه کدام برنامههای غیرسیستم امضا شده با پلتفرم میتوانند به یک UID مشترک با امضای پلتفرم بپیوندند، نداشتند. با شروع اندروید 15، سازندگان میتوانند صراحتاً به برنامههای غیرسیستم امضا شده با پلتفرم اجازه دهند به UIDهای مشترک امضا شده با پلتفرم در فایلهای XML پیکربندی سیستم در فهرست /etc/permissions بپیوندند. اگر یک برنامه غیرسیستم امضا شده با پلتفرم به لیست مجاز برای یک UID مشترک با امضای پلتفرم اضافه نشود، و برنامه همچنان سعی کند به UID مشترک امضا شده با پلتفرم بپیوندد (با android:sharedUserId در مانیفست آن)، آن برنامه را نمیتوان بر روی ساختهای غیراشکالزدایی نصب کرد.
برای پیدا کردن یک ورودی لیست مجاز گم شده، سعی کنید برنامه غیرسیستم امضا شده با پلتفرم خود را روی یک سازه غیرقابل رفع اشکال نصب کنید و بررسی کنید که آیا همچنان قابل نصب است یا خیر. در غیر این صورت، میتوانید گزارشهای دستگاه را برای فرمت پیامهای هشدار زیر بررسی کنید:
Non-preload app {PACKAGE_NAME} signed with platform signature and joining shared uid: {SHARED_UID_NAME}
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","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-29 بهوقت ساعت هماهنگ جهانی."],[],[],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}"]]