通用系統映像檔 (GSI) 是 未經修改的 Android 開放原始碼計畫 (AOSP) 實作純 Android 實作 程式碼,且可在多種 Android 裝置上執行。
應用程式開發人員可安裝並執行最新的 Android GSI,以便執行應用程式 在各種現有 Android 裝置上進行測試,並使用 GSI Android 作業系統發布階段,包括開發人員預覽版和 Beta 版。正在新增 GSI 進行驗證和測試程序可提供額外 優點:
- 針對更多實際裝置擴大測試涵蓋範圍
- 有更多時間修正應用程式相容性問題
- 有更多機會修正已回報的 Android 相容性問題 應用程式開發人員
GSI 專案已開啟 來源 ,並提供更多改善應用程式的方式,協助改善 Android 生態系統 和 OS 品質
![GSI 支援各種裝置](https://developer.android.google.cn/static/topic/generic-system-image/images/gsi-support.png?authuser=19&hl=zh-tw)
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\]"
在輸出結果中,查看
[vendor]
區段:namespace.default.isolated
。如果該屬性的值是
true
,表示裝置提供完整支援。 供應商原生開發套件 (VNDK),且可以使用 任何比裝置端 OS 還新的 GSI 作業系統 (OS) 版本 版本。請盡可能使用可用的最新 GSI OS 版本。如果屬性值為
false
,表示裝置未處於所有可用狀態 裝置與 VNDK 相容,且裝置只能使用相同裝置端 OS 的 GSI 版本。例如未搭載的 Android 10 (API 版本 29) 裝置 符合 VNDK 規定的只能載入 Android 10 GSI 映像檔。GSI CPU 架構類型必須與裝置的 CPU 架構相符。目的地: 為 GSI 映像檔找出正確的 CPU 架構,請執行下列指令 指令:
adb shell getprop ro.product.cpu.abi
請根據輸出內容,判斷刷新 裝置。舉例來說,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 會因裝置而異。請洽詢裝置製造商 確切工具和程序如果你使用 Google Pixel 裝置,例如 Pixel 3 和 更新的方法有以下幾種:
- 手動刷新 GSI 映像檔:請參閱「刷新 GSI 的規定」
- 為搭載 Android 10 或 iOS 的裝置使用動態系統更新 (DSU) 以上版本:請參閱「動態系統更新」頁面
提供意見
GSI 的用意是協助您在 Android 上驗證應用程式。感謝您 針對映像檔、工具及 GSI 使用程序的意見回饋 裝置。
如要回報錯誤或提出功能要求,請使用專屬的 Issue Tracker 元件 。