В последнее время, когда я пытаюсь отладить APK-инструментарий для тестирования Android, каждый раз, когда приложение запускается, я вижу что-то подобное в logcat
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function0() took 158.211ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function1() took 101.701ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function2() took 110.852ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function3() took 211.494ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function4() took 102.497ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function5() took 126.639ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function6() took 138.077ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function7() took 131.311ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function8() took 253.859ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function9() took 111.431ms
W/com.myapp: Verification of void com.myapp.test.hiptest.Actionwords.function10() took 231.172ms
Но с большим количеством строк (для всех функций).Каждая функция занимает 100-300 мс, и к тому времени, как они все выполнены - прошло около 5-10 минут.(что означает, что я действительно ничего не могу сделать в течение этих 10 минут)
Некоторые поиски в Google привели меня к этой теме SO , которая объясняет следующее:
похоже, что это является частью требования «обратной совместимости» для более новой среды выполнения ART.То есть приложения, созданные на основе DALVIK, также должны работать на ART.
Если вы запускаете приложение DVM в системе ART, вы увидите это сообщение при первом запуске, когда dex2oat преобразуетприложение.Если вы создадите приложение, ориентированное на ART, оно больше не сможет работать на DVM, но преобразование OAT произойдет во время установки и не будет видно во время выполнения.
Однако я неуверен, что я делаю не так.И приложение, и тестовые APK скомпилированы с targetSdk 27 и minSdk 21. (и запуска приложений на sdk 27)
Этот другой поток SO , похоже, также похож на то, что яЯ получаю ответ, но ответ не предоставляется.
Важно: это происходит только для сборок, которые запускаются с помощью значка на панели инструментов «Отладка», а не для сборок, запускаемых нажатием «Выполнить».