通用系統映像檔 (GSI)

通用系統映像檔 (GSI) 是 未經修改的 Android 開放原始碼計畫 (AOSP) 實作純 Android 實作 程式碼,且可在多種 Android 裝置上執行。

應用程式開發人員可安裝並執行最新的 Android GSI,以便執行應用程式 在各種現有 Android 裝置上進行測試,並使用 GSI Android 作業系統發布階段,包括開發人員預覽版和 Beta 版。正在新增 GSI 進行驗證和測試程序可提供額外 優點:

  • 針對更多實際裝置擴大測試涵蓋範圍
  • 有更多時間修正應用程式相容性問題
  • 有更多機會修正已回報的 Android 相容性問題 應用程式開發人員

GSI 專案已開啟 來源 ,並提供更多改善應用程式的方式,協助改善 Android 生態系統 和 OS 品質

GSI 支援各種裝置
圖 1:GSI 可安裝至多種 有時甚至是裝置製造商的 Android 版本 並未提供自己的系統映像檔

GSI 與所有裝置都具備相同的核心系統功能 。也就是說,GSI 並不包含裝置製造商的 自訂模式。因此,您可能會在 下列情況:

  • 與 UI 相關的互動
  • 要求較新硬體功能的工作流程

檢查裝置相容性

GSI 僅適用於具備下列特性的裝置:

  • 系統啟動載入程式已解鎖。
  • 完全符合 Treble。
  • 推出時搭載 Android 9 (API 級別 28) 或以上版本。裝置已升級至 從較舊版本的 Android 9 可能不支援 GSI。
,瞭解如何調查及移除這項存取權。

如要判斷裝置是否可以使用 GSI,以及您使用的 GSI OS 版本 安裝,然後執行下列步驟:

  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 作業系統 (OS) 版本 版本。請盡可能使用可用的最新 GSI OS 版本。

    如果屬性值為 false,表示裝置未處於所有可用狀態 裝置與 VNDK 相容,且裝置只能使用相同裝置端 OS 的 GSI 版本。例如未搭載的 Android 10 (API 版本 29) 裝置 符合 VNDK 規定的只能載入 Android 10 GSI 映像檔。

  3. GSI CPU 架構類型必須與裝置的 CPU 架構相符。目的地: 為 GSI 映像檔找出正確的 CPU 架構,請執行下列指令 指令:

    adb shell getprop ro.product.cpu.abi

    請根據輸出內容,判斷刷新 裝置。舉例來說,Pixel 5 的輸出內容會指出 CPU 採用 arm64-v8a 架構,因此請使用 arm64 類型的 GSI。

下載 GSI

視開發需求而定,您可以透過以下幾種方式取得 GSI:

,瞭解如何調查及移除這項存取權。

安裝 GSI

安裝 GSI 會因裝置而異。請洽詢裝置製造商 確切工具和程序如果你使用 Google Pixel 裝置,例如 Pixel 3 和 更新的方法有以下幾種:

  • 手動刷新 GSI 映像檔:請參閱「刷新 GSI 的規定
  • 為搭載 Android 10 或 iOS 的裝置使用動態系統更新 (DSU) 以上版本:請參閱「動態系統更新」頁面

提供意見

GSI 的用意是協助您在 Android 上驗證應用程式。感謝您 針對映像檔、工具及 GSI 使用程序的意見回饋 裝置。

如要回報錯誤或提出功能要求,請使用專屬的 Issue Tracker 元件

其他資源