通用系統映像檔 (GSI) 是「純 Android」實作項目,具備未經修改的 Android 開放原始碼計畫 (AOSP) 程式碼,可在多種 Android 裝置上執行。
應用程式開發人員可安裝並執行最新的 Android GSI,在各種現有的 Android 裝置上執行應用程式測試,並將 GSI 用於不同的 Android 作業系統發布階段,包括開發人員預覽版和 Beta 版。在驗證及測試程序中加入 GSI 可帶來一些額外優點:
- 在更多實體裝置上獲得更大的測試涵蓋範圍
- 有更多時間修正應用程式相容性問題
- 有更多機會修正由應用程式開發人員回報的 Android 相容性問題
GSI 專案屬於開放原始碼專案,可在每個 Android 版本推出前提供更多改善應用程式和 OS 品質的方法,進而改善 Android 生態系統。
 
  GSI 與所有安裝 GSI 的裝置具備相同的核心系統功能。也就是說,GSI 並不包含裝置製造商自訂項目。因此,您可能會在下列情況中遇到行為差異:
- 與 UI 相關的互動
- 要求較新硬體功能的工作流程
檢查裝置合規性
GSI 僅適用於具備下列特性的裝置:
- 系統啟動載入程式已解鎖。
- 完全符合 Treble。
- 推出時搭載 Android 9 (API 級別 28) 或以上版本。從較舊版本升級至 Android 9 的裝置可能不支援 GSI。
如要判斷裝置是否可使用 GSI,以及應安裝哪個 GSI OS 版本,請執行下列步驟:
- 請執行下列指令,確認是否支援 Treble: - adb shell getprop ro.treble.enabled - 如果回應是 - false,代表裝置與 GSI 不相容,請勿繼續操作。如果回應是- true,請繼續下一個步驟。
- 請執行下列指令,確認是否可跨版本支援: - adb shell cat /system/etc/ld.config.version_identifier.txt \ | grep -A 20 "\[vendor\]" - 在輸出結果中,查看 - namespace.default.isolated的- [vendor]區段。- 如果此屬性值為 - true,則裝置會完整支援 供應商原生開發套件 (VNDK),且可使用比裝置上作業系統 (OS) 版本還新的任何 GSI OS 版本。請盡可能使用可用的最新 GSI OS 版本。- 如果此屬性值為 - false,代表裝置並不完全符合 VNDK 的規定,因此裝置只能使用與裝置 OS 版本相同的 GSI。舉例來說,不符合 VNDK 規定的 Android 10 (API 版本 29) 裝置只能載入 Android 10 GSI 映像檔。
- GSI CPU 架構類型必須與裝置的 CPU 架構相符。如要找出 GSI 映像檔的正確 CPU 架構,請執行下列指令: - adb shell getprop ro.product.cpu.abi - 請根據輸出內容,判斷刷新裝置時要使用的 GSI 映像檔。舉例來說,Pixel 5 的輸出內容會指出 CPU 架構為 - arm64-v8a,因此應使用- arm64類型的 GSI。
下載 GSI
視開發需求而定,您可以透過以下幾種方式取得 GSI:
- 如果是 Android 預覽版 GSI 和搭載 GMS 的 Android GSI,請從 GSI 發布頁面下載映像檔。
- 若是不含 GMS 應用程式的預建 GSI 映像檔,請從 Android 開放原始碼計畫 CI 網站下載映像檔。 
- 如要建構不含 GMS 的 Android GSI,請透過 Android 開放原始碼計畫下載原始碼,然後建構 GSI。 
安裝 GSI
GSI 安裝作業會因裝置而異。如要瞭解確切工具和程序,請洽詢裝置製造商。如果是 Pixel 3 以上的 Google Pixel 裝置,可採用多種安裝方式:
- 手動刷新 GSI 映像檔:請參閱「刷新 GSI 的規定」
- 為搭載 Android 10 以上版本的裝置使用動態系統更新 (DSU):請參閱「動態系統更新網站」頁面
提供意見
GSI 的用意是協助您在 Android 上驗證應用程式。我們非常重視您的意見回饋,希望瞭解您對 GSI 映像檔、工具及在裝置上使用 GSI 的體驗。
如要回報錯誤或提出功能要求,請使用 GSI 專屬的 Issue Tracker 元件。
