تصاویر سیستم عمومی (GSI)

یک تصویر سیستم عمومی ( GSI ) یک پیاده‌سازی خالص اندروید با کد پروژه متن‌باز اندروید (AOSP) اصلاح‌نشده است که روی انواع دستگاه‌های اندروید قابل اجرا است.

توسعه‌دهندگان برنامه می‌توانند جدیدترین GSIهای اندروید را نصب و اجرا کنند تا آزمایش برنامه را روی انواع دستگاه‌های اندروید موجود انجام دهند و از GSIهای مراحل مختلف انتشار سیستم عامل اندروید، از جمله پیش‌نمایش توسعه‌دهندگان و نسخه‌های بتا، استفاده کنند. افزودن GSIها به فرآیندهای تأیید و آزمایش شما می‌تواند مزایای دیگری را برای شما فراهم کند:

  • پوشش تست گسترده‌تر روی مجموعه‌ای بزرگتر از دستگاه‌های واقعی
  • زمان بیشتر برای رفع مشکلات سازگاری برنامه‌ها
  • فرصت‌های بیشتر برای رفع مشکلات سازگاری در اندروید که توسط توسعه‌دهندگان برنامه گزارش شده‌اند

پروژه GSI متن‌باز است و با ارائه راه‌های بیشتر برای بهبود کیفیت برنامه‌ها و سیستم‌عامل قبل از هر انتشار اندروید، به بهبود اکوسیستم اندروید کمک می‌کند.

پشتیبانی از GSI در دستگاه‌های مختلف
شکل 1 : GSIها را می‌توان در طیف وسیعی از دستگاه‌ها نصب کرد، و گاهی اوقات حتی برای نسخه‌هایی از اندروید که سازنده دستگاه، تصویر سیستم خود را برای آنها ارائه نمی‌دهد.

GSIها شامل عملکردهای اصلی سیستم برای تمام دستگاه‌هایی هستند که روی آنها نصب شده‌اند. به عبارت دیگر، یک GSI شامل سفارشی‌سازی‌های سازنده دستگاه نمی‌شود. به همین دلیل، ممکن است در موقعیت‌های زیر با تفاوت‌های رفتاری مواجه شوید:

  • تعاملاتی که شامل رابط کاربری می‌شوند
  • گردش‌های کاری که به ویژگی‌های سخت‌افزاری جدیدتری نیاز دارند

بررسی انطباق دستگاه

GSIها فقط می‌توانند روی دستگاه‌هایی با مشخصات زیر کار کنند:

  • بوت لودر آنلاک شده است.
  • کاملاً سازگار با استاندارد Treble.
  • با اندروید ۹ (سطح API 28) یا بالاتر عرضه شده است. دستگاه‌هایی که از نسخه قبلی به اندروید ۹ ارتقا یافته‌اند، ممکن است از GSIها پشتیبانی کنند یا نکنند.

برای تعیین اینکه آیا دستگاه شما می‌تواند از GSI استفاده کند و کدام نسخه سیستم عامل GSI را باید نصب کنید، موارد زیر را انجام دهید:

  1. با اجرای دستور زیر، پشتیبانی Treble را بررسی کنید:

    adb shell getprop ro.treble.enabled

    اگر پاسخ false باشد، دستگاه با GSIها سازگار نیست و نباید ادامه دهید. اگر پاسخ true باشد، به مرحله بعدی بروید.

  2. با اجرای دستور زیر، پشتیبانی از نسخه‌های مختلف را بررسی کنید:

    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 برای همان نسخه سیستم عامل روی دستگاه استفاده کند. به عنوان مثال، یک دستگاه اندروید ۱۰ (API نسخه ۲۹) که با VNDK سازگار نیست، فقط می‌تواند یک تصویر GSI اندروید ۱۰ را بارگذاری کند.

  3. نوع معماری پردازنده GSI باید با معماری پردازنده دستگاه مطابقت داشته باشد. برای یافتن معماری پردازنده مناسب برای تصویر GSI، دستور زیر را اجرا کنید:

    adb shell getprop ro.product.cpu.abi

    از خروجی برای تعیین اینکه هنگام فلش کردن دستگاه خود از کدام تصویر GSI استفاده کنید، استفاده کنید. به عنوان مثال، در Pixel 5، خروجی نشان می‌دهد که معماری CPU arm64-v8a است، بنابراین شما از نوع arm64 GSI استفاده خواهید کرد.

دانلود GSIها

بسته به نیازهای توسعه شما، چند راه برای دریافت GSI وجود دارد:

GSI را نصب کنید

نصب GSI به دستگاه بستگی دارد. برای ابزارها و مراحل دقیق به سازنده دستگاه خود مراجعه کنید. برای دستگاه‌های Google Pixel مانند Pixel 3 و جدیدتر، چندین روش برای نصب وجود دارد:

بازخورد بدهید

GSIها برای کمک به شما در اعتبارسنجی برنامه‌هایتان در اندروید در نظر گرفته شده‌اند. ما از بازخورد شما در مورد تصاویر، ابزارها و فرآیند استفاده از GSIها در دستگاه‌هایتان قدردانی می‌کنیم.

برای اطلاع‌رسانی در مورد اشکالات یا درخواست‌های ویژگی، از مؤلفه‌ی ردیاب مشکلات اختصاصی برای GSIها استفاده کنید.

منابع اضافی