问题描述
- 引用multiDexEnabled 问题
-
java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$layout
引用multiDexEnabled = true android 4.x 及以下的手机不能运行,出现上述错误
解决方案
这个问题我搜索了好久,在国内的搜索上找不到类似问题,所以自己提了一个。其实我已经解决了。
I faced the same issue and fixed it. It is issue with Dex Limit. Because the dex limit is reached, it creates two dex files. Lollipop knows how to read, preLollipop has no idea unless you tell it in application class.
就是dex限制问题,android5.x及以上的都知道,之前的版本要加一句话在 dependencies{}中
android {
compileSdkVersion 21
buildToolsVersion "21.1.0"
defaultConfig {
...
minSdkVersion 14
targetSdkVersion 21
...
// Enabling multidex support.
multiDexEnabled true
}
...
}
dependencies {
compile 'com.android.support:multidex:1.0.0'
}
还要在Manifest.xml的application 标签中加入以下一句话:
<?xml version="1.0" encoding="utf-8"?>
package="com.example.android.multidex.myapplication">
...
android:name="android.support.multidex.MultiDexApplication">
...
解决方案二:
谢谢大神,终于解决了
解决方案三:
注意python中的引用问题
ArrayList对象引用的问题
python模块交叉引用问题