16 KB の後方互換オプションを有効にする

16 KB の切り替えを使用すると、16 KB カーネルでデバイスを実行できます。16 KB の後方互換オプションは、デバイスが 16 KB カーネルで実行されている場合に使用できます。アプリに ELF ファイル(拡張子は .so)が含まれており、LOAD セグメントのアライメントが 4 KB の場合、または、その圧縮済みの APK に圧縮されていない ELF ファイルがあり、それが 4 KB で zip アライメントされている場合、パッケージ マネージャーはアプリを 16 KB の後方互換モードで実行します。パッケージ マネージャーがアプリに対して 16 KB の後方互換モードを有効にしている場合、そのアプリを初めて起動する際に、16 KB の後方互換モードで実行されていることを示す警告が表示されます。16 KB の後方互換モードで一部のアプリは動作しますが、信頼性と安定性を最大限に高めるには、アプリを 16 KB アライメントにする必要があります。

16 KB の後方互換オプションを有効にする手順は次のとおりです。

  1. 16 KB の切り替えを有効にするの手順に沿って 16 KB の切り替えを有効にします。

  2. 次のいずれかの方法で 16 KB の後方互換モードを有効にします。

    • Android は、必要な場合は後方互換モードでアプリを実行します。後方互換モードには 2 つの異なるパーツがあり、それぞれ個別に有効化できます。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 プロパティを enabled または disabled に設定して、AndroidManifest.xml 内の特定のアプリの後方互換モードをオンまたはオフにします。このプロパティが設定されている場合、アプリの起動時に後方互換モードの警告は表示されません。

    • アプリ情報ページの [詳細設定] で、[ページサイズ互換モードでアプリを実行する] 設定を切り替え、特定のアプリに対する 16 KB の後方互換モードを有効または無効にします。この設定は、デバイスが 16 KB のページサイズで実行されている場合にのみ表示されます。