تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
صورة النظام العامة (GSI) هي تنفيذ لنظام Android الأساسي يتضمّن رمزًا برمجيًا غير معدَّل من "مشروع Android المفتوح المصدر" (AOSP)، ويمكن تشغيله على مجموعة متنوعة من أجهزة Android.
يمكن لمطوّري التطبيقات تثبيت أحدث حِزم GSI لنظام Android وتشغيلها لإجراء اختبارات التطبيقات على مجموعة متنوعة من أجهزة Android الحالية وباستخدام حِزم GSI من مراحل إصدار مختلفة من نظام التشغيل Android، بما في ذلك إصدارات "المعاينة للمطوّرين" وإصدارات "الإصدار التجريبي". يمكن أن توفّر لك إضافة حزم GSI إلى عمليات التحقّق والاختبار بعض المزايا الإضافية، وهي:
تغطية أوسع للاختبار على مجموعة أكبر من الأجهزة الحقيقية
المزيد من الوقت لحلّ مشاكل توافق التطبيقات
المزيد من الفرص لحلّ مشاكل التوافق في Android التي أبلغ عنها مطوّرو التطبيقات
مشروع GSI هو مشروع مفتوح المصدر ويساعد في تحسين منظومة Android المتكاملة من خلال توفير المزيد من الطرق لتحسين جودة التطبيقات ونظام التشغيل قبل كل إصدار من إصدارات Android.
الشكل 1: يمكن تثبيت صور نظام GSI على مجموعة كبيرة من الأجهزة، وفي بعض الأحيان حتى على إصدارات Android التي لا يوفّر مصنّع الجهاز صورة نظام خاصة بها.
تتضمّن حزم GSI وظائف النظام الأساسية نفسها لجميع الأجهزة التي يتم تثبيتها عليها. بعبارة أخرى، لا يتضمّن GSI التعديلات التي تجريها الشركة المصنّعة للجهاز. نتيجةً لذلك، قد تواجه اختلافات في السلوك في الحالات التالية:
التفاعلات التي تتضمّن واجهة المستخدم
سير العمل الذي يتطلّب ميزات أجهزة أحدث
التحقّق من توافق الجهاز
لا يمكن أن تعمل حزم GSI إلا على الأجهزة التي تتضمّن الخصائص التالية:
برنامج الإقلاع غير مقفل.
متوافق تمامًا مع Treble
تم إطلاقه بنظام التشغيل Android 9 (المستوى 28 لواجهة برمجة التطبيقات) أو إصدار أحدث. قد تكون الأجهزة التي تمت ترقيتها إلى Android 9 من إصدار أقدم متوافقة مع صور نظام التشغيل العامة (GSI) أو غير متوافقة معها.
لتحديد ما إذا كان جهازك يمكنه استخدام صورة نظام عامة (GSI) وإصدار نظام التشغيل الذي يجب تثبيته، اتّبِع الخطوات التالية:
تحقَّق من توفّر Treble من خلال تنفيذ الأمر التالي:
adb shell getprop ro.treble.enabled
إذا كانت الاستجابة false، يعني ذلك أنّ الجهاز غير متوافق مع حِزم GSI ولا يجب المتابعة. إذا كانت الاستجابة true، انتقِل إلى الخطوة التالية.
تحقَّق من التوافق بين الإصدارات المختلفة من خلال تنفيذ الأمر التالي:
adb shell cat /system/etc/ld.config.version_identifier.txt \
| grep -A 20 "\[vendor\]"
في الناتج، ابحث في القسم [vendor] عن
namespace.default.isolated.
إذا كانت قيمة هذه السمة هي true، يعني ذلك أنّ الجهاز يتوافق تمامًا مع حزمة تطوير البرامج الأصلية الخاصة بالمورّد (VNDK) ويمكنه استخدام أي إصدار من نظام التشغيل (OS) الخاص بصورة النظام العامة (GSI) أحدث من إصدار نظام التشغيل المثبَّت على الجهاز. استخدِم أحدث إصدار متاح من نظام التشغيل GSI كلما أمكن ذلك.
إذا كانت قيمة السمة هي false، يعني ذلك أنّ الجهاز غير متوافق تمامًا مع VNDK، ولا يمكنه استخدام سوى صورة نظام عام (GSI) لإصدار نظام التشغيل نفسه على الجهاز. على سبيل المثال، لا يمكن لجهاز يعمل بالإصدار 10 من نظام التشغيل Android (المستوى 29 من واجهة برمجة التطبيقات) وغير متوافق مع VNDK تحميل سوى صورة GSI للإصدار 10 من نظام التشغيل Android.
يجب أن يتطابق نوع بنية وحدة المعالجة المركزية (CPU) في صورة نظام التشغيل العام (GSI) مع بنية وحدة المعالجة المركزية (CPU) للجهاز. للعثور على بنية وحدة المعالجة المركزية المناسبة لصورة GSI، نفِّذ الأمر التالي:
adb shell getprop ro.product.cpu.abi
استخدِم الناتج لتحديد صورة GSI التي يجب استخدامها عند تنزيل
نظام التشغيل على جهازك. على سبيل المثال، على هاتف Pixel 5، ستشير النتيجة إلى أنّ بنية وحدة المعالجة المركزية هي arm64-v8a، لذا عليك استخدام نوع arm64 من حزمة GSI.
تنزيل صور نظام عامة (GSI)
تتوفّر عدة طرق للحصول على معرّفات GSI، وذلك حسب احتياجاتك المتعلقة بالتطوير:
لتنزيل صور GSI للإصدار التجريبي من Android وصور GSI لنظام Android مع "خدمات Google للأجهزة الجوّالة"، انتقِل إلى صفحة إصدار GSI.
لتنزيل صور GSI المُنشأة مسبقًا بدون تطبيقات GMS، يمكنك تنزيل الصور من موقع AOSP CI:
يعتمد تثبيت صورة نظام عامة (GSI) على الجهاز. يُرجى الرجوع إلى الشركة المصنّعة لجهازك لمعرفة الأدوات والإجراءات الدقيقة. بالنسبة إلى أجهزة Google Pixel، مثل Pixel 3 والإصدارات الأحدث، هناك عدة طرق للتثبيت:
استخدام ميزة "تحديث النظام الديناميكي" (DSU) للأجهزة التي تعمل بالإصدار 10 من نظام التشغيل Android أو الإصدارات الأحدث: يُرجى الاطّلاع على صفحة تحديثات النظام الديناميكية
تقديم ملاحظات
تم تصميم صور نظام التشغيل العام لمساعدتك في التحقّق من صحة تطبيقاتك على Android. نقدّر ملاحظاتك حول الصور والأدوات وعملية استخدام صور نظام التشغيل العامة على أجهزتك.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-08-25 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","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-08-25 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Generic System Images (GSIs)\n\nA Generic System Image ([GSI](https://source.android.com/setup/build/gsi)) is a\n*pure Android* implementation with unmodified Android Open Source Project (AOSP)\ncode, runnable on a variety of Android devices.\n\nApp developers can install and run the latest Android GSIs to perform app\ntesting on a variety of existing Android devices and using GSIs from different\nAndroid OS release stages, including Developer Preview and Beta builds. Adding\nGSIs to your verification and testing processes can provide you with some extra\nbenefits:\n\n- Broader test coverage on a greater set of real devices\n- More time to fix app compatibility issues\n- More opportunities to fix compatibility issues in Android that are reported by app developers\n\nThe GSI project is [open\nsource](https://android.googlesource.com/platform/manifest/+/refs/heads/pie-gsi#)\nand helps improve the Android ecosystem by providing more ways to improve app\nand OS quality before each release of Android.\n**Figure 1**: GSIs can be installed across a broad range of devices, and sometimes even for versions of Android that a device manufacturer doesn't provide their own system image for.\n\nGSIs include the same core system functionalities for all devices that they're\ninstalled on. In other words, a GSI does not include device manufacturer's\ncustomizations. Because of this, you might encounter behavioral differences in\nthe following situations:\n\n- Interactions that involve the UI\n- Workflows that request newer hardware features\n\nCheck device compliance\n-----------------------\n\nGSIs can only function on devices with the following characteristics:\n\n- Bootloader is unlocked.\n- Fully Treble-compliant.\n- Launched with Android 9 (API level 28) or higher. Devices upgraded to Android 9 from an earlier version might or might not support GSIs.\n\n| **Warning:** Attempting to flash a GSI to a non-compliant device could result in your device becoming non-bootable. Always confirm that your device is compliant before flashing, and follow the installation steps provided by your device's manufacturer. GSIs don't support rollback, so you will need a recovery method and original system ROM to revert to the original system.\n\nTo determine whether your device can use a GSI and which GSI OS version you\nshould install, do the following:\n\n1. Check for Treble support by running the following command:\n\n ```\n adb shell getprop ro.treble.enabled\n ```\n\n If the response is `false`, the device isn't compatible with GSIs and you\n shouldn't continue. If the response is `true`, continue to the next step.\n2. Check for cross-version support by running the following command:\n\n ```\n adb shell cat /system/etc/ld.config.version_identifier.txt \\\n | grep -A 20 \"\\[vendor\\]\"\n ```\n | **Note:** Depending on your platform, the configuration file in the preceding command may or may not have a version identifier in it.\n\n In the output, look in the `[vendor]` section for\n `namespace.default.isolated`.\n\n If the value for that attribute is `true`, then the device fully supports\n [Vendor Native Development Kit\n (VNDK)](https://source.android.com/devices/architecture/vndk) and can use\n any GSI operating system (OS) version that is newer than the on-device OS\n version. Whenever possible, use the latest GSI OS version that is available.\n\n If the value for the attribute is `false`, then the device isn't fully\n VNDK-compliant, and the device can use only a GSI for the same on-device OS\n version. For example, an Android 10 (API version 29) device that isn't\n VNDK-compliant can load only an Android 10 GSI image.\n3. The GSI CPU architecture type must match the device's CPU architecture. To\n find the right CPU architecture for the GSI image, run the following\n command:\n\n ```\n adb shell getprop ro.product.cpu.abi\n ```\n\n Use the output to determine which GSI image to use when flashing your\n device. For example, on a Pixel 5, the output would indicate that the CPU\n architecture is `arm64-v8a`, so you would use the `arm64` type of GSI.\n\nDownload GSIs\n-------------\n\nThere are a few ways to get GSIs, depending on your development needs:\n\n- For Android Preview GSIs and Android GSIs with GMS, download the images from the [GSI release page](/topic/generic-system-image/releases).\n- For pre-built GSI images without GMS applications, download the images from\n the AOSP CI site:\n\n - [Android 10 (API level\n 29)](https://ci.android.com/builds/branches/aosp-android10-gsi/grid?)\n - [Android 11 (API level\n 30)](https://ci.android.com/builds/branches/aosp-android11-gsi/grid?)\n - [Android 12 (API level\n 31)](https://ci.android.com/builds/branches/aosp-android12-gsi/grid?)\n - [Android 13 (API level\n 33)](https://ci.android.com/builds/branches/aosp-android13-gsi/grid?)\n- To build Android GSIs without GMS, download source code from\n [AOSP](https://source.android.com/setup/build/gsi#building-gsis) and build\n your GSIs.\n\n| **Important:** Device manufacturers shouldn't use these versions of GSIs to run and submit compliance tests. Instead, device manufacturers should continue to refer to their existing communication channels, such as their Technical Account Managers for compliance-test-related activities.\n\nInstall a GSI\n-------------\n\n| **Note:** If your device has adopted [Android Verified\n| Boot](https://source.android.com/security/verifiedboot/avb) (AVB), download and flash the following image to disable AVB before flashing a GSI: [vbmeta.img](https://dl.google.com/developers/android/qt/images/gsi/vbmeta.img)\n\nInstalling a GSI is device-dependent. Refer to your device's manufacturer for\nthe exact tools and procedures. For Google Pixel devices such as the Pixel 3 and\nnewer, there are several ways to install:\n\n- Manually flashing GSI images: see [Requirements for flashing GSIs](https://source.android.com/setup/build/gsi#flashing-gsis)\n- Using Dynamic System Update (DSU) for devices that already run Android 10 or higher: see the [Dynamic System Updates](/topic/dsu) page\n\nGive feedback\n-------------\n\nGSIs are intended to help you validate your apps on Android. We appreciate your\nfeedback on the images, the tools, and the process for using GSIs on your\ndevices.\n\nTo notify us of bugs or feature requests, use the [dedicated issue tracker\ncomponent](https://issuetracker.google.com/issues/new?component=470386&template=1147338)\nfor GSIs.\n\nAdditional resources\n--------------------\n\n- [Understand the impact of Generic System Images (GSI) (Android Dev Summit\n '18)](https://www.youtube.com/watch?v=Y-HmCIHD63w)"]]