Android Studio使用过程中碰到问题及解决方案整理
2016-03-18 16:04
585 查看
问题1,
资源文件问题出现:
Error:Execution failed for task ':app:mergeDebugResources'. > Crunching Cruncher scrollbar_thumb.9.png failed, see logs
在你的主工程文件夹里的build.gradle文件里,加上下面这两句:
aaptOptions.cruncherEnabled = false
aaptOptions.useNewCruncher = false
我的改完以后是这样的:
android {
more........
然后这个错误就没有了,看样子好像是把那个什么引起错误的cruncher给关了吧。。。于是就好了,楼主或者路过的各位可以试试。。。我的成功了。。。再怎么clean都不会报错了。。。
如果还有.9图片问题就用Android Studio重做下.9图片
这个问题,找了很多资料,虽然解决了,但是还是不知道为什么,问题的主要原因是因为资源文件解析错误。
常见的原因有
1.资源文件名冲突
这个换个文件名就可以了
2.引用包重复
Android studio 下面有了v4包或者v7包,这个时候在libs下又添加了一次包,就会报这个错误,删掉Libs下重复的包就行了。
2.文件名显示的格式与文件本身的格式不对应
这个比较难发现,重新换个正确的文件就可以了。[/code]
去掉重复的v4包后还有问题。
在build.gradle中加上
问题4:outof memory
在build.gradle中加上
问题5,增加multidexenabled后出现引用的包中noclassdeffounderror
将你的application继承MultiDexApplication即可
如果没有写自己的application那么在Androidmanifest.xml中如下配置
至此终于将我的工程移到Androidstudio中并并编译成功。
问题6,引用第三方library 出现找不到包 将第三方包里面的build.gradle中如下配置注释掉
问题7,多个第三方jar包中引用了support-v4包,导致编译问题
问题8,The same input jar is specified twice
原因是build.gradle文件配置了
dependencies {
compile fileTree(include: '*.jar', dir: 'libs')
}
[/code]
里面已经添加过jar包,混淆文件proguard-rules.pro里面又加了句-libraryjars libs/***.jar,将-libraryjars libs/***.jar 前面用#号注释或者直接删掉即可。
资源文件问题出现:
Error:Execution failed for task ':app:mergeDebugResources'. > Crunching Cruncher scrollbar_thumb.9.png failed, see logs
在你的主工程文件夹里的build.gradle文件里,加上下面这两句:
aaptOptions.cruncherEnabled = false
aaptOptions.useNewCruncher = false
我的改完以后是这样的:
android {
compileSdkVersion 19 buildToolsVersion "23.0.1" aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false defaultConfig { minSdkVersion 10 targetSdkVersion 19 }
more........
然后这个错误就没有了,看样子好像是把那个什么引起错误的cruncher给关了吧。。。于是就好了,楼主或者路过的各位可以试试。。。我的成功了。。。再怎么clean都不会报错了。。。
如果还有.9图片问题就用Android Studio重做下.9图片
问题2
Error:Error: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ‘command ‘/Users/billy/Library/Android/sdk/build-tools/21.1.2/aapt‘‘ finished with non-zero exit value 42
这个问题,找了很多资料,虽然解决了,但是还是不知道为什么,问题的主要原因是因为资源文件解析错误。
常见的原因有
1.资源文件名冲突
这个换个文件名就可以了
2.引用包重复
Android studio 下面有了v4包或者v7包,这个时候在libs下又添加了一次包,就会报这个错误,删掉Libs下重复的包就行了。
2.文件名显示的格式与文件本身的格式不对应
这个比较难发现,重新换个正确的文件就可以了。[/code]
问题3
有时你会发现,在你使用Android Studio 进行编译的时候提示:Error:Execution failed for task ‘:demo:dexDebug‘. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ‘command ‘java.exe‘‘ finished with non-zero exit value 2 为什么会这样呢?你就算是重启呀AndroidStudio,重启电脑也不行。那么想想,只前有什么操作?是不是有新的Lib之类的引用库加入了?这个时时候就不能只看最后的异常了,还要往上看,我发现的结果就是包名冲突,有重复的jar包名。这里的包名不是指jar的名称相同,而是指jar包里的相同的包名。排除冲突即可。===============================================================网上提供的另一种解决的办法,不过我发现对我这个异常来说,没有用。----------XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX---------------------------其实直接打开Gradle项目中的,对应项目的脚本文件 ,改成如下的就行了dependencies { compile project(‘:demo‘) provided fileTree(include: [‘*.jar‘], dir: ‘libs‘) compile ‘com.android.support:support-v4:22.1.1‘ compile ‘com.android.support:appcompat-v7:22.1.1‘ }即将 引用的库的条件改为provided,不要用compile.因为它们已经是库了,再编译就。。。
去掉重复的v4包后还有问题。
在build.gradle中加上
defaultConfig { ... multiDexEnabled true }
问题4:outof memory
在build.gradle中加上
dexOptions { incremental true javaMaxHeapSize "4g" }
问题5,增加multidexenabled后出现引用的包中noclassdeffounderror
将你的application继承MultiDexApplication即可
如果没有写自己的application那么在Androidmanifest.xml中如下配置
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.multidex.myapplication"> <application ... android:name="android.support.multidex.MultiDexApplication"> ... </application> </manifest>
至此终于将我的工程移到Androidstudio中并并编译成功。
问题6,引用第三方library 出现找不到包 将第三方包里面的build.gradle中如下配置注释掉
buildTypes { // release { // minifyEnabled true // proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt' // } }
问题7,多个第三方jar包中引用了support-v4包,导致编译问题
java.util.zip.ZipException: duplicate entry: android/support/v4/***
在build.gradle中加上和如下配置
dependencies { *** }
configurations { all*.exclude group: 'com.android.support', module: 'support-v4' }
问题8,The same input jar is specified twice
原因是build.gradle文件配置了
dependencies {
compile fileTree(include: '*.jar', dir: 'libs')
}
[/code]
里面已经添加过jar包,混淆文件proguard-rules.pro里面又加了句-libraryjars libs/***.jar,将-libraryjars libs/***.jar 前面用#号注释或者直接删掉即可。
相关文章推荐
- Android开发技术-Handler机制与原理
- android 各种xml资源的引用方式
- facebook的Android调试工具Stetho介绍
- 采用MQTT协议实现Android消息推送
- RN控件之DrawerLayoutAndroid导航栏
- blog need to read
- 自定义view
- Android 事件分发机制
- Android5.x 新控件之RecyclerView,CardView,Palette的使用
- Android Canvas绘图详解(图文)
- Android 混淆文件实例
- 11_Android的线程和线程池
- AndroidStudio上库工程关联
- Android、java环境搭建流程
- Mac下配置Android环境变量
- Android 左滑or右滑抽屉菜单
- Android中Context详解 ---- 你所不知道的Context
- Android开发中Eclispe相关问题及相应解决
- ANDROID设置TEXTVIEW控件的背景透明度和字体透明度
- Android SDK Manager无法自动更新解决方案