Для достижения наилучшего пользовательского опыта вам следует оптимизировать свое приложение, сделав его максимально компактным и быстрым. Наш оптимизатор приложений R8 оптимизирует ваше приложение, удаляя неиспользуемый код и ресурсы, переписывая код для оптимизации производительности во время выполнения и выполняя другие функции. Для ваших пользователей это означает:
- Более быстрое время запуска
- Улучшенная производительность рендеринга и выполнения
- Меньше ошибок ANR
Чтобы включить оптимизацию приложения, установите параметры isMinifyEnabled = true
(для оптимизации кода) и isShrinkResources = true
(для оптимизации ресурсов) в скрипте сборки на уровне приложения вашей релизной сборки, как показано в следующем коде. Мы рекомендуем всегда включать оба параметра. Мы также рекомендуем включать оптимизацию приложения только в финальной версии приложения, которую вы тестируете перед публикацией (обычно это релизная сборка), поскольку оптимизации увеличивают время сборки проекта и могут затруднить отладку из-за изменения кода.
Котлин
android { buildTypes { release { // Enables code-related app optimization. isMinifyEnabled = true // Enables resource shrinking. isShrinkResources = true proguardFiles( // Default file with automatically generated optimization rules. getDefaultProguardFile("proguard-android-optimize.txt"), ... ) ... } } ... }
Круто
android { buildTypes { release { // Enables code-related app optimization. minifyEnabled true // Enables resource shrinking. shrinkResources true // Default file with automatically generated optimization rules. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') ... } } }
Кроме того, убедитесь, что R8 использует все возможности оптимизации, удалив эту строку из файла gradle.properties
вашего проекта, если он существует:
android.enableR8.fullMode=false # Remove this line from your codebase.
Обратите внимание, что включение оптимизации приложения затрудняет понимание трассировки стека, особенно если R8 переименовывает имена классов или методов. Чтобы получить трассировку стека, соответствующую исходному коду, см. раздел Восстановление исходной трассировки стека .
Если включен R8, вам также следует создать профили запуска для еще большей производительности запуска.
Если вы включили оптимизацию приложения и она приводит к ошибкам, вот несколько стратегий по их исправлению:
- Добавьте правила сохранения , чтобы часть кода оставалась нетронутой.
- Внедряйте оптимизацию постепенно .
- Обновите свой код, используя библиотеки, которые лучше подходят для оптимизации .