注意: 写该文章主要帮助自己记忆,贴出来希望可以给有同样问题的人解惑,不喜勿喷,可以提意见哦。
问题一:导入本地项目所遇到的问题
1、问题描述:
Error:Failed to open zip file.
Gradle's dependency cache may be corrupt (this sometimes occurs after a
network connection timeout.)
Re-download dependencies and sync project (requires
network)
Re-download dependencies and sync project (requires network)
2、解决方式:
删除项目中的gradle文件夹,再重新编译。
问题二:
1、问题描述:
Error:The number of method references in a .dex file cannot exceed 64K.
Learn how to resolve this issue at
https://developer.android.com/tools/building/multidex.html
2、解决方式:
在build.gradle文件中增加内容1,但仅仅增加内容1只可以解决编译错误,为了解决应用安装后报错,必须增加内容2
android {
...
//1
defaultConfig{
multiDexEnabled true
}
//2
dependencies{
compile 'com.android.support:multidex:1.0.2'
}
}
问题三:如果不增加问题二中的内容2,安装应用后会报错
1、问题描述:
E/AndroidRuntime( 2916): FATAL EXCEPTION: main
E/AndroidRuntime( 2916): java.lang.RuntimeException: Unable to instantiate
application android.support.multidex.MultiDexApplication:
java.lang.ClassNotFoundException: Didn't find class
"android.support.multidex.MultiDexApplication" on path:
/system/app/USBMusicPlayer_a12_Activity-debug.apk
E/AndroidRuntime( 2916): at
android.app.LoadedApk.makeApplication(LoadedApk.java:504)
E/AndroidRuntime( 2916): at
android.app.ActivityThread.handleBindApplication(ActivityThread.java:4364)
E/AndroidRuntime( 2916): at
android.app.ActivityThread.access$1300(ActivityThread.java:141)
E/AndroidRuntime( 2916): at
...
2、解决方式:
在build.gradle文件中增加如下内容:
android {
...
dependencies{
//这的版本可能不同
compile 'com.android.support:multidex:1.0.2'
}}
问题四:创建一个新项目遇到的问题
1、问题描述:
C:\Users\Administrator\.gradle\caches\transforms-1\files-1.1\appcompat-v7-
26.1.0.aar\2a6a5fcbca7d820cb35027346122b6d8\res\values\values.xml
Error:(12, 5) error: resource android:color/black not found.
Error:(14, 5) error: resource android:color/black not found.
Error:(15, 5) error: resource android:color/black not found.
...
Error:java.util.concurrent.ExecutionException:
java.util.concurrent.ExecutionException:
com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for
details
Error:java.util.concurrent.ExecutionException:
com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for
details
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs
for details
Error:Execution failed for task ':app:processDebugResources'.
Failed to execute aapt
2、解决方式:
这种问题一般与sdk和jdk有关,原先jdk使用了自己下载的jdk1.8,但是总是有问题,使用了推荐的jdk和最新的sdk就好了,如下所示:
问题五:Android Studio引用Fabric时出现的问题
1、问题描述
Error:Could not download gradle.jar (io.fabric.tools:gradle:1.22.1): No cached version available for offline mode
2、原因
这是因为项目选中了离线工作,首先会从本地去获取,由于本地没有,所以就会出问题,不应该勾选Offline work。
3、修改方案
(1)选中Android Studio——>Preferences——>弹出如下对话框——>不勾选Offline work——>refresh all gradle project
(2)如果没有选中仍然报该问题请选中File——>Invalidate Caches/Restart;
问题六 升级成android Studio 3.0后出现的该问题。
问题描述1:
Error:All flavors must now belong to a named flavor dimension. Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
解决方式:
问题7:
描述如下:
Warning:The specified Android SDK Build Tools version (25.0.2) is ignored, as it is below
the minimum supported version (26.0.2) for Android Gradle Plugin 3.0.1.
Android SDK Build Tools 26.0.2 will be used.
To suppress this warning, remove "buildToolsVersion '25.0.2'" from your build.gradle file, as
each version of the Android Gradle Plugin now has a default version of the build tools.
解决方式:
换成指定的版本
问题8:
问题描述:
Error:Execution failed for task ':actionbarsherlock:processDebugResources'.
Unknown android attribute 'SherlockSpinner'
解决方式:
问题9:
问题描述:
Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
java.lang.RuntimeException: java.lang.RuntimeException:
com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
原因:之前想使用Mob短信认证的功能,因此在lib中加入了MobCommons-2017.0607.1736.jar,MobTools-2017.0607.1736.jar等jar包,后来又使用Mob的分享功能,进行了如下配置,在总的build.gradle中配置了如下内容:
在单个模块中配置如下内容:
这是ShareSDK配置加载成功后的内容包含了MobCommons-2017.0607.1736.jar,MobTools-2017.0607.1736.jar,与libs目录中的重复了,因此导致一直报错。
解决方案:
把libs中的MobCommons-2017.0607.1736.jar和MobTools-2017.0607.1736.jar删除即可。