во время игры с Android ART и «родным» кодовым файлом .oat/.elf, который был создан в процессе установки приложения, я заметил что-то странное.Android ART - использование файла .oat в/dalvik-cache /?
Для моего понимания, если устройство использует ART (Android> = 5.0), приложение начнется с скомпилированного файла овса (/ data/dalvik-cache/arm64 /).
Вот почему я был удивлен при проверке использованных fd приложений и не нашел там файла. Здесь указан только обычный apk (/data/app//base.apk).
Проверить этот вывод из моих "LS -l/Proc/PID/Fd"
Так что я подумал, может быть это просто нет в списке есть. Поэтому я сам обменял овский файл этого приложения, скомпилировав другой класс.dex с помощью инструмента dex2oat.
Так что даже после изменения файла приложение запускается нормально, без каких-либо странных сообщений или ошибок (также в logcat).
Какое объяснение? Что такое подробный процесс, который делает Android при запуске приложения под ART?
Я надеюсь, что кто-то может очистить это для меня. Большое спасибо.
вам может видеть, что base.odex отображается в память, если вы печатаете вывод файла 'maps'! – Paschalis