今天启动应用就没有反应了,我决定断点调试。
我想在Application 的Oncreate 里面总可以断点到吧,程序的主入口。
竟然不行。
但是我在自己的uncaughtException,可以断点断到。
奥,是的,UncaughtExceptionHandler 是在Application 的attachBaseContext里面设置的。
终于找到了原因:
Unable to get provider com.baidu.mobads.openad.FileProvider: java.lang.ClassNotFoundException: Didn't find class "com.baidu.mobads.openad.FileProvider" on path: DexPathList[[zip file "/system/framework/org.simalliance.openmobileapi.jar", zip file
"/data/app/com.chaozh.iReader-1/base.apk"],nativeLibraryDirectories=[/data/app/com.chaozh.iReader-1/lib/arm, /data/app/com.chaozh.iReader-
1/base.apk!/lib/armeabi, /vendor/lib, /system/lib]]
因为安装FileProvider 的时候出现了问题,所以,程序直接就挂了。还没有走到Application 的onCreate。
要了解代码执行顺序,很重要。attachBaseContext 是程序最先执行的地方!