Реализация dexopt в менеджере пакетов применима только к Android 13 и более ранним версиям. В Android 14 он заменен на ART Service и будет удален из менеджера пакетов в следующей версии. Информацию о настройке службы ART см. в разделе Настройка службы ART .
Начиная с Android 7.0 существует общий способ указать уровень компиляции/проверки, происходящий на различных этапах. Уровни компиляции можно настроить через свойства системы, значения по умолчанию:
-
pm.dexopt.install=speed-profile
-
pm.dexopt.bg-dexopt=speed-profile
-
pm.dexopt.boot-after-ota=verify
-
pm.dexopt.first-boot=verify
Фильтр компиляции при первой загрузке устройства. Используемый здесь фильтр влияет только на время загрузки после заводских настроек. Мы рекомендуем
verify
фильтр, чтобы избежать длительного времени, прежде чем пользователь впервые сможет использовать телефон. Обратите внимание: если все приложения в образе системы уже скомпилированы сverify
,speed-profile
илиspeed
с правильным контекстом загрузчика классов, компиляция при первой загрузке будет пропущена, иpm.dexopt.first-boot
не будет иметь никакого эффекта. .
Это фильтр компиляции, используемый при установке приложений через Google Play или другие магазины приложений. Мы рекомендуем установить для фильтра установки значение speed-profile
, чтобы можно было использовать профили из файлов метаданных dex (см. блог ). Обратите внимание: если профиль не указан или он пуст, speed-profile
эквивалентен verify
.
Это фильтр компиляции, используемый, когда устройство находится в режиме ожидания и заряжается. Попробуйте фильтр компилятора speed-profile
, чтобы воспользоваться преимуществами компиляции на основе профиля и сэкономить место на диске.
Фильтр компиляции, используемый после беспроводного обновления. Мы настоятельно рекомендуем использовать фильтр verify
компилятора для этой опции, чтобы избежать очень долгой загрузки.