1、Error:Execution failed for task ':app:mergeDebugResources'. > Crunching Cruncher bg_btn.9.png
使用Android Studio时,在修改应用图标时,出现的错误,资源合并发生错误。
当时我在所有的mipmap文件夹和drawable中都粘贴上了某图片,图片名称无数字,还出现这个错误,求大神指点。
知道啦,怪我硬是把jpg格式的扩展名改成了png格式(囧),jpg格式也不会报错,不过大多用png格式,
想要修改图标,可以在 阿里巴巴矢量 直接下载png格式的图标。
ps:(查阅别的资料)
(1)Android studio中的资源文件命名不可带有数字,
(2)或者设置一下Android studio,http://blog.csdn.net/u013443865/article/details/51232586
2、Android Studio中只有一个空的drawable目录,没有指定具体的分辨率,一般不用它来放置图片。ImageView用于在界面上展示图片,所用图片通常放在以“drawable”开头的目录下。我们需要在res目录下新建一个drawable_xhdpi目录,将所需图片复制到该目录下。
当时我直接右击res->new->Directory,命名为drawable_xhdpi,可是代码中并没有识别出来,该处报错,
解决方法:
只要按照如下的方式添加图标:
(1). res文件夹右键 -> New -> Image Asset 添加图标
(2). 选择图标用途,
Icon Type:
Launcher icons(启动器图标),Action bar and tab icons( 操作栏和标签栏图标),Notification icons(提醒图标).
(3). Asset type 选择 Text
(4). 其他custom选项
Padding (填充)属性定义元素边框与元素内容之间的空间。
(5). next -> finish
3、这次的出现的问题让我很无语啊
Error:(4, 33) 错误: MaterialProgressDrawable在android.support.v4.widget中不是公共的; 无法从外部程序包中对其进行访问
竟然是因为Android Studio自动添加的
只要把
import android.support.v4.widget.MaterialProgressDrawable;
注释掉或删掉就好了。
4、为保证百分比布局在Android所有版本上的兼容性,在项目的app/build.gradle的dependencies闭包中添加百分比库的依赖,
本人认为箭头所指要一样(尴尬,才发现照片没显示出来),就是后面的数字,应该是版本号一致就好。
5、今天学了Android制作和使用Nine-Patch图片
Nine-Patch图片是一种经过特殊处理的png图片,能够指定图片的哪些区域可以被拉伸而哪些区域不可以。
问题是:制作保存完后,message_left.png变成了message_left.9.png,因此我把android:background="@drawable/message_left"改成了android:background="@drawable/message_left.9",然后AS并未识别出来
解决方法:将制作保存好的图片message_left.9.png复制到drawable下,并将原来的图片message_left.png删除,android:background="@drawable/message_left"不用更改,android:background="@drawable/message_left.9"是错的。
6、配置adb环境失败。。。
解决方法:真尴尬,忘了保存
http://www.jb51.net/os/windows/449645.html
7、在学习数据存储时,真机不能利用Android Device Monitor 的File Explorer来查看保存的数据文件,获取不到权限。
8、在学习SQL数据库时,犯了一个低级错误
public static final String CREATE_BOOK = "create table Book(" + "id integer primary key autoincrement," + "author text," + "price real," + "pages integer," + "name text)";把逗号掉了。。。
9、
学习litepal开源数据库时,创建的时候就老是停止运行,包名错误,自己的包名和书上的包名不一样,也只管照着书上写了。也是因为自己还是没学明白。
<?xml version="1.0" encoding="utf-8"?> <litepal> <dbname value="BookStore"></dbname> <version value="1"></version> <list> <mapping class="com.example.emily.litepaltest.Book"></mapping> <mapping class="com.example.emily.litepaltest.Category"></mapping> </list> </litepal>
android studio 各种问题
1.dexDebug ExecException finished with non-zero exit value 2 全bug日志如下:
(Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\JDK8\jdk1.8.0_11\bin\java.exe'' finished with non-zero exit value 2)
需要在gradle中配置下面的代码,原因是引用了多个libraries文件
defaultConfig {
multiDexEnabled true
}
2.Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/BackStackState$1.class
Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/annotation/ArrayRes.class
Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/android/volley/ServerError.class
原因:在所添加的jar包或aar包中也引用了support-V4,与工程中引用的相冲突
Ctrl+N --> 在搜索框中输入BackStackState --> 查找到所有引用该类的类,这些类即为引起冲突的类
去掉本工程中gradle中用于引用有冲突的包的代码或者将冲突的代码从jar包或aar包中移除,确保一个module中只引用了一份相同的第三方包
3.project sturcture和Project Structure 无论是按快捷键或者是从files中打开都不显示
event log中报:IllegalArgumentException:Multiple entries with same key: Google Inc.:Google APIs:23=Google APIs (Google Inc.) (API 23) and Google Inc.:Google APIs:23=Google APIs (Google Inc.) (API 23)
解决办法:先看一下系统配置的SDK的位置和Android Studio所用的路径是否一致,如果不一致重新配置系统的SDK路径或者是重新修改Android Studio的SDK路径
通过SDK Manager删除掉google API23
如果解决不了,卸载android studio -->重新安装 ,还有问题点击File --> Invalidate Cashes/Restart --> Invalidate and Restart,解决不了继续通过SDK Manager删除掉google API23
4.
Error:Execution failed for task ':app:clean'.
> Unable to delete directory: E:\as_workspaces\DJIgo\app\build\intermediates\res\merged\debug
项目中有错,无法删除这个文件夹下面的文件。手动删除debug文件夹或某工具粉碎即可(补充与20160916)。
5.
Error:Execution failed for task ':tongyan_bugs_framework_master:processDebugAndroidTestManifest'.
> java.lang.RuntimeException: Manifest merger failed : uses-sdk:minSdkVersion 18 cannot be smaller than version 19 declared in library [DJIgo:tysubwayinspection3.0-framework:unspecified] E:\as_workspaces\DJIgo\tongyan_bugs_framework_master\build\intermediates\exploded-aar\DJIgo\ty3.0-framework\unspecified\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="com.ton.framework" to force usage
应该是Library的sdk的版本与app的sdk的版本有冲突
6.
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 17 cannot be smaller than version 19 declared in library [DJIgo:tongyan-djigo-lib:unspecified] E:\as_workspaces\DJIgo\app\build\intermediates\exploded-aar\DJIgo\tongyan-djigo-lib\unspecified\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="com.tongyan.lib.djigo" to force usage
7.
Error:Execution failed for task ':tongyan-djigo-lib:compileReleaseJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
8.
注: E:\as_workspaces\DJIgo\tongyan-djigo-lib\src\main\java\com\tongyan\lib\djigo\ui\view\ControlMoveView.java使用或覆盖了已过时的 API。
注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 android studio-File->Project Structure->Android sdk location(路径应该不正确)
9.
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> java.io.FileNotFoundException: E:\as_workspaces\TYSubway\app\libs\pushservice-4.5.6.88.jar (系统找不到指定的文件。)
需要把dependencies中的lib包下面的jar包全部取消下,再添加。
10.
Error:Execution failed for task ':tysubwayinspection3.0-framework:packageReleaseResources'.
> java.io.IOException: Could not delete folder E:\as_workspaces\DJIgo\tysubwayinspection3.0-framework\build\intermediates\bundles\release\res
11.由于使用sdk5.0造成的以下问题,需要用sdk6.0
E:\as_workspaces\DJIgo\app\build\intermediates\res\merged\debug\values-v23\values-v23.xml
Error:(3) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(18) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.
Error:Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\Android\adt-bundle-windows-x86_64-20140702\android_sdk\build-tools\23.0.0\aapt.exe'' finished with non-zero exit value 1
12.
Error:Execution failed for task ':app:clean'.
> Unable to delete file: E:\as_workspaces\DjiGo-Demo\app\build\intermediates\exploded-aar\com.android.support\support-v4\23.3.0\jars\classes.jar
项目中有错
13.
Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/annotation/IntegerRes.class
包冲突了,在app及子library中仔细找是否有相同的jar包
14.
Error:Execution failed for task ':app:clean'.
> Unable to delete directory: E:\as_workspaces\DJIGO_FLY\app\build\outputs\apk
无法删除这个文件夹下的文件,到目录下面就知道了。
15.
关于R文件无法引入,导致很长时间无法找到错误的根源。比如:如果错误在A类里面发生,但是Message里提示的是B类的R文件无法引入。
这样你就要用排除法,就像做选择题,要将B类的问题先注释掉,A类里面的问题才会暴露出来。
16. 2016-07-04
关于该问题,需要注意的是。有时候虽然有个红叉但是也能运行,可能as校验导致该问题。另外如果代码中没有什么问题时,就需要查看下AndroidManifest.xml是否有错误,一般情况下是这个原因导致。只要知道这个即可。
17.2016-07-04
Error:Execution failed for task ':Tongyan_StructureCheck_Library:clean'.
> Unable to delete directory: E:\as_workspaces\TYSubwayInspectionNJ_Reconsitution\StructureCheck_Library\build\intermediates\exploded-aar
按照上面的说明,不能删除这个目录,你就手动删除下
18.2016-07-15
Error:Execution failed for task ':app:clean'.
> Unable to delete directory: E:\as_workspaces\TYSubwayInspectionNJ_Reconsitution\app\build\intermediates\classes\debug\com\tongyan\nanjing\subway
Unable to delete directory 像这样不能删除文件,你就找这个这个文件夹删除掉,如果不能删除就粉碎掉。官网的错误提示还是比较傻瓜式的,他让你干嘛,你就干嘛就行了。
19.2016-07-18
Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to "ad3f801955f53e94516853b8f93ac2b9ee8cc4"
<a href="fixGradleElements">Fix plugin version and sync project</a><br><a href="openFile:E:\as_workspaces\PedometerDemo\app\build.gradle">Open File</a>
将该处的配置改成目前能使用的项目的配置
Error:Could not open no_initscript class cache for initialization script 'C:\Users\Rubert\AppData\Local\Temp\asLocalRepo194.gradle' (C:\Users\Rubert\.gradle\caches\2.4\scripts\asLocalRepo194_dzs652nv4687n61mc501sfben\InitScript\no_initscript).
> Failed to create directory 'C:\Users\Rubert\.gradle\caches\2.4\scripts\asLocalRepo194_dzs652nv4687n61mc501sfben\InitScript\no_initscript\classes'
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile files('libs/Volley.jar') compile files('libs/gson-1.7.1.jar') compile 'com.android.support:support-v4:22.0.0' } 26.2016.12.26 > Cannot find System Java Compiler. Ensure that you have installed a JDK (not just a JRE) and configured your JAVA_HOME system variable to point to the according directory.
File-->Project-->Structrue-->SDK Location-->JDK location
Use embedded JDK 前面勾去掉,指定一个JDK地址。
27.2017.1.10
Error:com.android.builder.internal.aapt.AaptException: Failed to crunch file E:\as_workspaces\TYSubwayInspectionNJ_Reconsitution3\Tongyan_StructureCheck_Library\build\intermediates\exploded-aar\TYSubwayInspectionNJ_Reconsitution3\Tongyan_Framework_Library\unspecified\res\drawable-hdpi-v4\np_numberpicker_up_disabled_focused_holo_dark.png into E:\as_workspaces\TYSubwayInspectionNJ_Reconsitution3\Tongyan_StructureCheck_Library\build\intermediates\res\merged\androidTest\debug\drawable-hdpi-v4\np_numberpicker_up_disabled_focused_holo_dark.png
修改名称路径,避免路径过长
28.2017.2.16
当你android:targetSdkVersion="22" 再将22改成23时会遇到各种问题,例如编译不通过,文件无法写入(权限注册过)。把手机上的app删除,再安装即可。
29.2017.2.23
Error:Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
30.2017.2.24
Error:A problem occurred configuring project ':app'.
> Unable to find optional library: org.apache.http.legacy
android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId 'com.xxx.xxxe' minSdkVersion 14 targetSdkVersion 22 versionCode 1 versionName "1.0" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } productFlavors { } useLibrary 'org.apache.http.legacy' }
31.2017-03-08
Error:Execution failed for task ':app:compileReleaseJava'.
> Cannot find System Java Compiler. Ensure that you have installed a JDK (not just a JRE) and configured your JAVA_HOME system variable to point to the according directory.
将此处的勾选去掉,再改成你的jdk根目录
32.
Error:Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define Lorg/apache/commons/net/DatagramSocketClient;
clean
33.2017-04-28
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
同第25.
34.2017-04-28
android API23 无法使用HttpClient无法使用,在build.gradle文件中加入下面代码即可
android {
useLibrary "org.apache.http.legacy"
}
35.2017-07-06
Error:Failed to open zip file.
Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
<a href="syncProject">Re-download dependencies and sync project (requires network)</a>
<a href="syncProject">Re-download dependencies and sync project (requires network)</a>
该问题主要是你Gradle版本不对,在当前正常能运行的项目中File->Project Structure->Project->gradle version (2.14.1),将该版本设置到你不能运行的项目中的相同位置。然后,就没有然后了。
36、今天遇到了一个棘手的问题,郭霖老师的coolweather,我照着打的,结果不能从省级跳到市级,
错误日志是:
03-21 19:00:47.715 7436-7436/com.coolweather.android V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@5d99a8
03-21 19:00:48.102 7436-7508/com.coolweather.android W/System.err: org.json.JSONException: Value <!DOCTYPE of type java.lang.String cannot be converted to JSONArray
03-21 19:00:48.103 7436-7508/com.coolweather.android W/System.err: at org.json.JSON.typeMismatch(JSON.java:111)
03-21 19:00:48.103 7436-7508/com.coolweather.android W/System.err: at org.json.JSONArray.<init>(JSONArray.java:96)
03-21 19:00:48.103 7436-7508/com.coolweather.android W/System.err: at org.json.JSONArray.<init>(JSONArray.java:108)
03-21 19:00:48.103 7436-7508/com.coolweather.android W/System.err: at com.coolweather.android.util.Utility.handleCityResponse(Utility.java:43)
03-21 19:00:48.104 7436-7508/com.coolweather.android W/System.err: at com.coolweather.android.ChooseAreaFragment$3.onResponse(ChooseAreaFragment.java:159)
求大神指点迷津(可怜脸)
37、Android程序报错:java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.
原因:对应的Adapter的getView方法返回为空,出现的这个空指针现象