#android
#Android
Вопрос:
У меня есть приложение в Google Play Store (Vocalizzo Lite), и последняя версия вылетает с
java.lang.VerifyError: at java.lang.Class.newInstance (Class.java) at
android.app.AppComponentFactory.instantiateActivity (AppComponentFactory.java:69) at
androidx.core.app.CoreComponentFactory.instantiateActivity (CoreComponentFactory.java) at
android.app.Instrumentation.newActivity (Instrumentation.java:1216) at
android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2932) at
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3156) at
android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:78) at
android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:108) at
android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:68) at
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1864) at android.os.Handler.dispatchMessage (Handler.java:106) at
android.os.Looper.loop (Looper.java:205) at
android.app.ActivityThread.main (ActivityThread.java:6991) at
java.lang.reflect.Method.invoke (Method.java) at
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run
(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main
(ZygoteInit.java:884)
Я не вижу ни одного из моих собственных классов в этом стеке вызовов. Сбои происходят только на устройствах LG, что для меня тоже странно (LGE LG G7 ThinQ, LGE LG Stylo 5, LGE Q8 и т. Д., 11 разных моделей, SDK api 28 и 29). Есть идеи, как это расследовать?
С уважением…
ОБНОВЛЕНИЕ: я получил физическое устройство LG и смог запустить свое приложение с помощью отладчика. Я получил странные ошибки, но они разные. Если я просто запускаю на нем тип выпуска debug, я получаю:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: ru.vitvlkv.vocalizzo.lite, PID: 30139
java.lang.NoSuchMethodError: No virtual method getTracks()Ljava/util/List; in class Lcom/leff/midi/MidiFile; or its super classes (declaration of 'com.leff.midi.MidiFile' appears in /system/framework/framework.jar:classes2.dex)
at ru.vitvlkv.vocalizzo.util.MidiUtils.writeToStream(MidiUtils.java:43)
at ru.vitvlkv.vocalizzo.util.MidiUtils.clone(MidiUtils.java:28) ...
Что странно, потому что это класс в моей кодовой базе, и ЕСТЬ метод getTracks() .
Если я запускаю приложение в режиме отладки, то отладчик улавливает: SIGSEGV (signal SIGSEGV: invalid address (fault address: 0x0))
что может быть проблемой в собственной библиотеке (и основной причиной всех других странных вещей? ..) который я использую в своем приложении.
Любые рекомендации о том, как отладить его сейчас ?..
Комментарии:
1. используете ли вы proguard / r8?
2. Да, я использую R8.