啟用 16 KB 向後相容性選項

16 KB 切換按鈕 可讓您使用 16 KB 核心執行裝置。裝置執行 16 KB 核心時,系統會提供 16 KB 向後相容選項。如果應用程式有 LOAD 區段對齊方式為 4 KB 的 ELF 檔案 (副檔名為 .so),或壓縮的 APK 有 4 KB ZIP 對齊方式的未壓縮 ELF 檔案,套件管理員就會以 16 KB 向後相容模式執行應用程式。如果套件管理員已為應用程式啟用 16 KB 向後相容模式,應用程式首次啟動時會顯示警告,指出應用程式正在 16 KB 向後相容模式下執行。

頁面大小相容模式的警告

圖 1. 頁面大小相容模式的警告。

16 KB 向後相容模式可讓部分應用程式運作,但為確保最佳可靠性和穩定性,應用程式仍應與 16 KB 對齊。

如要啟用 16 KB 回溯相容選項,請按照下列操作說明進行:

  1. 按照「啟用 16 KB 切換按鈕」中的步驟操作,啟用 16 KB 切換按鈕。

  2. 使用下列任一方法啟用 16 KB 向後相容模式:

    • Android 會在必要時以回溯相容模式執行應用程式。向後相容性有兩個獨立部分,可分別啟用:bionic.linker.16kb.app_compat.enabled 屬性可控管程式庫的載入方式,pm.16kb.app_compat.disabled 屬性則可控管 APK 的安裝方式。

    • 如要強制裝置上的每個應用程式都使用 16 KB 的回溯相容性:

      adb shell setprop bionic.linker.16kb.app_compat.enabled true
      adb shell setprop pm.16kb.app_compat.disabled false
      
    • 如要強制關閉裝置上所有應用程式的 16 KB 回溯相容性:

      adb shell setprop bionic.linker.16kb.app_compat.enabled false
      adb shell setprop pm.16kb.app_compat.disabled true
      
    • android:pageSizeCompat 屬性設為 enableddisabled,即可在特定應用程式的 AndroidManifest.xml 中開啟或關閉回溯相容模式。設定這項屬性後,應用程式啟動時就不會顯示回溯相容模式警告。

    • 在應用程式資訊頁面中,切換「進階」下方的「以頁面大小相容模式執行應用程式」設定,即可為特定應用程式啟用或停用 16 KB 向後相容模式。只有在裝置以 16 KB 頁面大小執行時,才會顯示這項設定。

      頁面大小相容模式設定

      圖 2. 頁面大小相容模式設定。