启用 16 KB 向后兼容选项

借助 16 KB 切换开关,您可运行内核为 16 KB 的设备。当设备运行 16 KB 内核时,16 KB 向后兼容选项可用。如果应用具有 4 KB LOAD 分段对齐的 ELF 文件(扩展名为 .so),或者压缩后的 APK 包含 4 KB ZIP 对齐的未压缩 ELF 文件,则软件包管理系统会以 16 KB 向后兼容模式运行该应用。如果软件包管理系统为某应用启用了 16 KB 向后兼容模式,该应用在首次启动时会显示一条警告,表明它正以 16 KB 向后兼容模式运行。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 页面大小运行时,这项设置才会显示。