Android studio 从2.3升级到3.0.1之后,发现原来的项目运行在安卓7.0没问题,可是运行在安卓4.4就直接奔溃了,提示应用停止运行。
查看了日志报错为:
Unable to get provider cn.jpush.android.service.DataProvider:
java.lang.ClassNotFoundException:Didn't find class "cn.jpush.android.service.DataProvider" on path:
DexPathList[[zip file "/data/app/com.zhwy.apk"],nativeLibraryDirectories=[/data/app-lib/com.zhwy, /vendor/lib, /system/lib]]
检查了好久才发现是multidex的问题,可以我有在build.gradle设置了multiDexEnabled true
原来除了在defaultConfig下面配置multiDexEnabled true,还要在dependencies内加入
compile 'com.android.support:multidex:1.0.0',然后在应用的Application类重写attachBaseContext方法,设置MultiDex.install(this);
重新编译后,在真机运行发觉OK了。