Переключатель 16 КБ позволяет запускать устройство с ядром размером 16 КБ. Параметр "Обратная совместимость с размером страницы 16 КБ" доступен, когда на устройстве используется ядро с размером страницы 16 КБ. Менеджер пакетов запускает приложение в режиме обратной совместимости 16 КБ, если в приложении есть ELF-файлы (с расширением .so) с выравниванием сегмента LOAD 4 КБ или если в заархивированном APK есть несжатые ELF-файлы, выровненные по границе 4 КБ. Если менеджер пакетов включил для приложения режим обратной совместимости с размером страниц 16 КБ, при первом запуске приложения появится предупреждение о том, что оно работает в этом режиме.
Рисунок 1. Предупреждение в режиме совместимости с размером страницы.
Режим обратной совместимости позволяет запускать некоторые приложения, но для лучшей надежности и стабильности их все равно нужно оптимизировать для поддержки страниц памяти размером 16 КБ.
Чтобы включить обратную совместимость с размером страницы 16 КБ, выполните следующие действия:
Следуйте инструкциям в разделе Как включить переключатель "Размер страницы 16 кБ".
Включить режим обратной совместимости с размером страницы 16 КБ можно одним из следующих способов:
При необходимости Android запускает приложения в режиме обратной совместимости. Обратная совместимость состоит из двух частей, которые можно включить независимо друг от друга: свойство
bionic.linker.16kb.app_compat.enabledуправляет загрузкой библиотек, а свойствоpm.16kb.app_compat.disabled– установкой APK.Чтобы принудительно включить обратную совместимость со страницами памяти размером 16 КБ для всех приложений на устройстве:
adb shell setprop bionic.linker.16kb.app_compat.enabled true adb shell setprop pm.16kb.app_compat.disabled falseЧтобы принудительно отключить обратную совместимость 16 КБ для всех приложений на устройстве, выполните следующую команду:
adb shell setprop bionic.linker.16kb.app_compat.enabled false adb shell setprop pm.16kb.app_compat.disabled trueЧтобы включить или отключить режим совместимости для определенного приложения в его манифесте
AndroidManifest.xml, задайте для свойстваandroid:pageSizeCompatзначениеenabledилиdisabled. Если задано это свойство, при запуске приложения не будут показываться предупреждения о режиме совместимости.На странице с информацией о приложении в разделе Расширенные настройки включите или отключите параметр Запускать приложение в режиме совместимости с размером страницы. Этот параметр виден только на устройствах, где установлен размер страницы 16 КБ.
Рисунок 2. Настройка режима совместимости с размером страницы.