Оптимизация кода DEX

Оптимизация кода DEX — это важный параметр Android, который помогает отслеживать и улучшать качество компиляции, размер и производительность вашего приложения. Оптимизация и обфускация кода с помощью R8 или альтернативных инструментов (таких как оптимизаторы, совместимые с ProGuard, или вторичные постпроцессоры DEX) уменьшают размер DEX-кода вашего приложения, улучшают производительность во время выполнения и минимизируют потребление памяти.

DEX-файлы, или исполняемые файлы Dalvik , содержат скомпилированный код, используемый для запуска вашего приложения. Обычно это код на Java и Kotlin, в отличие от скомпилированного кода на C++ или файлов .so .

Android Vitals сообщает метрики оптимизации кода DEX для всех приложений и игр, но устанавливает пороговые значения только для приложений и игр, отвечающих определенным требованиям к размеру.

Выявите проблему

Android Vitals может предупредить вас о низком уровне оптимизации DEX-кода вашего приложения. Это включает в себя обфускацию, уменьшение размера и оптимизацию для приложений и игр, использующих R8. Для приложений, не использующих R8, Android Vitals пытается проверить показатели оптимизации, уменьшения размера и обфускации, но при необходимости использует эвристику обфускации в качестве косвенного метода.

Состояние оптимизации монитора

Android Vitals может помочь улучшить производительность вашего приложения, оповещая вас через Play Console, когда ваше приложение не соответствует минимальным заданным процентам оптимизации кода. Подробное определение сжатия, оптимизации и обфускации см. в разделе «Использование анализатора конфигурации R8» .

Для приложений, созданных с использованием последнего обновления AGP версии 8.10 или выше, эти процентные значения берутся из включенного файла r8.json .

Для более старых версий AGP или в случаях, когда файл r8.json отсутствует, проценты рассчитываются на основе файла mapping.txt , если он присутствует, или с использованием эвристических алгоритмов DEX, если файл mapping недоступен.

Для приложений, оптимизированных с помощью альтернативного оптимизатора кода, Android Vitals выполняет анализ для оценки процента классов, методов и полей, которые обфусцированы в пакете приложения.

Минимальный общий размер DEX

Хотя Android Vitals рассчитывает показатели оптимизации кода для всех приложений, вы будете получать оповещения только в том случае, если размер пакета вашего приложения соответствует следующим требованиям к общему размеру DEX:

  • Приложения : Пакет содержит не менее 10 МБ DEX-кода в несжатом виде.
  • Игры : В комплект входит не менее 50 МБ DEX-кода в несжатом виде.

Android Vitals отображает размер DEX-файла вашего приложения, но вы также можете измерить его локально с помощью командной строки:

  unzip -l <yourapp>.aab | grep -E '\.dex$' | awk '{sum+=$1} END {print sum}'

Чтобы просмотреть точные метаданные, которые Android Vitals использует для расчета ваших результатов, извлеките файл r8.json из пакета вашего приложения:

unzip -p <yourapp>.aab BUNDLE-METADATA/com.android.tools/r8.json
,

Оптимизация кода DEX — это важный параметр Android, который помогает отслеживать и улучшать качество компиляции, размер и производительность вашего приложения. Оптимизация и обфускация кода с помощью R8 или альтернативных инструментов (таких как оптимизаторы, совместимые с ProGuard, или вторичные постпроцессоры DEX) уменьшают размер DEX-кода вашего приложения, улучшают производительность во время выполнения и минимизируют потребление памяти.

DEX-файлы, или исполняемые файлы Dalvik , содержат скомпилированный код, используемый для запуска вашего приложения. Обычно это код на Java и Kotlin, в отличие от скомпилированного кода на C++ или файлов .so .

Android Vitals сообщает метрики оптимизации кода DEX для всех приложений и игр, но устанавливает пороговые значения только для приложений и игр, отвечающих определенным требованиям к размеру.

Выявите проблему

Android Vitals может предупредить вас о низком уровне оптимизации DEX-кода вашего приложения. Это включает в себя обфускацию, уменьшение размера и оптимизацию для приложений и игр, использующих R8. Для приложений, не использующих R8, Android Vitals пытается проверить показатели оптимизации, уменьшения размера и обфускации, но при необходимости использует эвристику обфускации в качестве косвенного метода.

Состояние оптимизации монитора

Android Vitals может помочь улучшить производительность вашего приложения, оповещая вас через Play Console, когда ваше приложение не соответствует минимальным заданным процентам оптимизации кода. Подробное определение сжатия, оптимизации и обфускации см. в разделе «Использование анализатора конфигурации R8» .

Для приложений, созданных с использованием последнего обновления AGP версии 8.10 или выше, эти процентные значения берутся из включенного файла r8.json .

Для более старых версий AGP или в случаях, когда файл r8.json отсутствует, проценты рассчитываются на основе файла mapping.txt , если он присутствует, или с использованием эвристических алгоритмов DEX, если файл mapping недоступен.

Для приложений, оптимизированных с помощью альтернативного оптимизатора кода, Android Vitals выполняет анализ для оценки процента классов, методов и полей, которые обфусцированы в пакете приложения.

Минимальный общий размер DEX

Хотя Android Vitals рассчитывает показатели оптимизации кода для всех приложений, вы будете получать оповещения только в том случае, если размер пакета вашего приложения соответствует следующим требованиям к общему размеру DEX:

  • Приложения : Пакет содержит не менее 10 МБ DEX-кода в несжатом виде.
  • Игры : В комплект входит не менее 50 МБ DEX-кода в несжатом виде.

Android Vitals отображает размер DEX-файла вашего приложения, но вы также можете измерить его локально с помощью командной строки:

  unzip -l <yourapp>.aab | grep -E '\.dex$' | awk '{sum+=$1} END {print sum}'

Чтобы просмотреть точные метаданные, которые Android Vitals использует для расчета ваших результатов, извлеките файл r8.json из пакета вашего приложения:

unzip -p <yourapp>.aab BUNDLE-METADATA/com.android.tools/r8.json
,

Оптимизация кода DEX — это важный параметр Android, который помогает отслеживать и улучшать качество компиляции, размер и производительность вашего приложения. Оптимизация и обфускация кода с помощью R8 или альтернативных инструментов (таких как оптимизаторы, совместимые с ProGuard, или вторичные постпроцессоры DEX) уменьшают размер DEX-кода вашего приложения, улучшают производительность во время выполнения и минимизируют потребление памяти.

DEX-файлы, или исполняемые файлы Dalvik , содержат скомпилированный код, используемый для запуска вашего приложения. Обычно это код на Java и Kotlin, в отличие от скомпилированного кода на C++ или файлов .so .

Android Vitals сообщает метрики оптимизации кода DEX для всех приложений и игр, но устанавливает пороговые значения только для приложений и игр, отвечающих определенным требованиям к размеру.

Выявите проблему

Android Vitals может предупредить вас о низком уровне оптимизации DEX-кода вашего приложения. Это включает в себя обфускацию, уменьшение размера и оптимизацию для приложений и игр, использующих R8. Для приложений, не использующих R8, Android Vitals пытается проверить показатели оптимизации, уменьшения размера и обфускации, но при необходимости использует эвристику обфускации в качестве косвенного метода.

Состояние оптимизации монитора

Android Vitals может помочь улучшить производительность вашего приложения, оповещая вас через Play Console, когда ваше приложение не соответствует минимальным заданным процентам оптимизации кода. Подробное определение сжатия, оптимизации и обфускации см. в разделе «Использование анализатора конфигурации R8» .

Для приложений, созданных с использованием последнего обновления AGP версии 8.10 или выше, эти процентные значения берутся из включенного файла r8.json .

Для более старых версий AGP или в случаях, когда файл r8.json отсутствует, проценты рассчитываются на основе файла mapping.txt , если он присутствует, или с использованием эвристических алгоритмов DEX, если файл mapping недоступен.

Для приложений, оптимизированных с помощью альтернативного оптимизатора кода, Android Vitals выполняет анализ для оценки процента классов, методов и полей, которые обфусцированы в пакете приложения.

Минимальный общий размер DEX

Хотя Android Vitals рассчитывает показатели оптимизации кода для всех приложений, вы будете получать оповещения только в том случае, если размер пакета вашего приложения соответствует следующим требованиям к общему размеру DEX:

  • Приложения : Пакет содержит не менее 10 МБ DEX-кода в несжатом виде.
  • Игры : В комплект входит не менее 50 МБ DEX-кода в несжатом виде.

Android Vitals отображает размер DEX-файла вашего приложения, но вы также можете измерить его локально с помощью командной строки:

  unzip -l <yourapp>.aab | grep -E '\.dex$' | awk '{sum+=$1} END {print sum}'

Чтобы просмотреть точные метаданные, которые Android Vitals использует для расчета ваших результатов, извлеките файл r8.json из пакета вашего приложения:

unzip -p <yourapp>.aab BUNDLE-METADATA/com.android.tools/r8.json
,

Оптимизация кода DEX — это важный параметр Android, который помогает отслеживать и улучшать качество компиляции, размер и производительность вашего приложения. Оптимизация и обфускация кода с помощью R8 или альтернативных инструментов (таких как оптимизаторы, совместимые с ProGuard, или вторичные постпроцессоры DEX) уменьшают размер DEX-кода вашего приложения, улучшают производительность во время выполнения и минимизируют потребление памяти.

DEX-файлы, или исполняемые файлы Dalvik , содержат скомпилированный код, используемый для запуска вашего приложения. Обычно это код на Java и Kotlin, в отличие от скомпилированного кода на C++ или файлов .so .

Android Vitals сообщает метрики оптимизации кода DEX для всех приложений и игр, но устанавливает пороговые значения только для приложений и игр, отвечающих определенным требованиям к размеру.

Выявите проблему

Android Vitals может предупредить вас о низком уровне оптимизации DEX-кода вашего приложения. Это включает в себя обфускацию, уменьшение размера и оптимизацию для приложений и игр, использующих R8. Для приложений, не использующих R8, Android Vitals пытается проверить показатели оптимизации, уменьшения размера и обфускации, но при необходимости использует эвристику обфускации в качестве косвенного метода.

Состояние оптимизации монитора

Android Vitals может помочь улучшить производительность вашего приложения, оповещая вас через Play Console, когда ваше приложение не соответствует минимальным заданным процентам оптимизации кода. Подробное определение сжатия, оптимизации и обфускации см. в разделе «Использование анализатора конфигурации R8» .

Для приложений, созданных с использованием последнего обновления AGP версии 8.10 или выше, эти процентные значения берутся из включенного файла r8.json .

Для более старых версий AGP или в случаях, когда файл r8.json отсутствует, проценты рассчитываются на основе файла mapping.txt , если он присутствует, или с использованием эвристических алгоритмов DEX, если файл mapping недоступен.

Для приложений, оптимизированных с помощью альтернативного оптимизатора кода, Android Vitals выполняет анализ для оценки процента классов, методов и полей, которые обфусцированы в пакете приложения.

Минимальный общий размер DEX

Хотя Android Vitals рассчитывает показатели оптимизации кода для всех приложений, вы будете получать оповещения только в том случае, если размер пакета вашего приложения соответствует следующим требованиям к общему размеру DEX:

  • Приложения : Пакет содержит не менее 10 МБ DEX-кода в несжатом виде.
  • Игры : В комплект входит не менее 50 МБ DEX-кода в несжатом виде.

Android Vitals отображает размер DEX-файла вашего приложения, но вы также можете измерить его локально с помощью командной строки:

  unzip -l <yourapp>.aab | grep -E '\.dex$' | awk '{sum+=$1} END {print sum}'

Чтобы просмотреть точные метаданные, которые Android Vitals использует для расчета ваших результатов, извлеките файл r8.json из пакета вашего приложения:

unzip -p <yourapp>.aab BUNDLE-METADATA/com.android.tools/r8.json