最近提交后,我的应用程序开始崩溃在marshmallow上。我添加了一个自定义类NormalMode
,它是在服务启动时创建的。该错误仅在启动此服务时发生。
我试着查看65K限制并尝试使用multidex,但它并没有什么区别。我还安装了一个插件来告诉我我使用了多少种方法,它找到了54996种方法。
以下是运行模拟器的logcat示例:
02-15 18:00:44.428 8783-8783/com.vivescere.beacon I/art: Rejecting re-init on previously-failed class java.lang.Class<com.vivescere.beacon.emitter.mode.NormalMode>
02-15 18:00:44.429 8783-8783/com.vivescere.beacon D/AndroidRuntime: Shutting down VM
02-15 18:00:44.429 8783-8783/com.vivescere.beacon E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.vivescere.beacon, PID: 8783
java.lang.NoClassDefFoundError: com.vivescere.beacon.emitter.mode.NormalMode
at com.vivescere.beacon.emitter.EmitterService.switchMode(EmitterService.java:328)
at com.vivescere.beacon.emitter.EmitterService.start(EmitterService.java:289)
at com.vivescere.beacon.emitter.EmitterService.onStartCommand(EmitterService.java:163)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3010)
at android.app.ActivityThread.-wrap17(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1442)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
02-15 18:00:48.441 8783-8783/com.vivescere.beacon I/Process: Sending signal. PID: 8783 SIG: 9
我尝试删除有问题的类,但它只是减慢了错误,现在在创建我拥有的下一个自定义类的实例时会发生错误。