我的应用为sdk 19或更低版本提供了NoClassDefFoundError
。
我有我的傻瓜
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.idg.mail"
minSdkVersion 14
targetSdkVersion 23
multiDexEnabled = true
}
现在我尝试将其更改为
compileSdkVersion 19
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.idg.gatcamail"
minSdkVersion 19
targetSdkVersion 19
multiDexEnabled = true
}
我也改变了app-> module settings - android - sdk
。
通过这些更改,我构建了项目但仍然在我的android 4.4
上给出了相同的错误,并且它在更高版本上运行。
该类是在我处理网络操作的代码中定义的类。
如何调试此问题
答案 0 :(得分:3)
我几乎可以肯定它是multidex问题。如果它在sdk 21上正常运行 - 这是多索引问题。
以下是官方信息:Multidex
如果您正在使用Application类的自定义实现,则必须扩展MultiDexApplication类。还需要gradle标志。如果您没有使用自定义Application类,只需添加清单中提供的条目 - 文档中对此进行了描述。
编辑:差点忘了 - 你要添加依赖项,这个库提供了multidex:compile 'com.android.support:multidex:1.0.1'