Android studio使用过程中遇到的问题

转载 2016年08月31日 10:52:32

好多问题都是修改gradle文件解决的,如果一下问题没有注明修改什么地方,那就是gradle文件了

问题汇总:

1、

NinePatch(.9.png)图片的问题 
如果某个图片命名成了.9.png,实际图片并不是Ninepatch格式的,或格式错误,会编译出错,解决办法是按Ninepatch格式修改图片,严格安规范,四周都要限制。

2、

android studio 非法字符: \65279 Error:(1, 10) 错误: 需要class, interface或enum 
这个错误是文件BOM导致的 
只要将文件编码方式改掉就行,不要使用UTF-8 WITH BOM(UTF-8包含签名) 
简单的把文件删除,在Android Studio新建文件,再把原文件内容粘贴过去就行 
如果需要改的文件太多,给大家推荐一个小工具 BOM头小工具。

3、

AndroidMenifest.xml重复权限问题 
需要把重复的权限去掉,就不会再报警告了

4、

复制代码
Error:(26, 9) Attribute application@icon value=(@drawable/logo) from AndroidManifest.xml:26:9
Error:(28, 9) Attribute application@theme value=(@style/ThemeActionBar) from AndroidManifest.xml:28:9
is also present at XXXX-trunk:XXXXLib:unspecified:15:9 value=(@style/AppTheme)
Suggestion: add ‘tools:replace=”android:theme”‘ to <application> element at AndroidManifest.xml:24:5 to override
Error:Execution failed for task ‘:XXXX:processDebugManifest’.
> Manifest merger failed with multiple errors, see logs
复制代码

原因:

AS的Gradle插件默认会启用Manifest Merger Tool,若Library项目中也定义了与主项目相同的属性(例如默认生成的android:icon和android:theme),则此时会合并失败,并报上面的错误。

 

解决方法有以下2种:

方法1:在Manifest.xml的application标签下添加tools:replace=”android:icon, android:theme”(多个属性用,隔开,并且记住在manifest根标签上加入xmlns:tools=”http://schemas.android.com/tools”,否则会找不到namespace哦)

方法2:在build.gradle根标签上加上useOldManifestMerger true (懒人方法)

参考官方介绍:

http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger

5、

Library Project里面的BuildConfig.DEBUG永远都是false。这是Android Studio的一个已知问题,某Google的攻城狮说,Library projects目前只会生成release的包。

Issue 52962: https://code.google.com/p/android/issues/detail?id=52962

 

解决方法:(某Google的攻城狮推荐的方法)

Workaround: instaed of BuildConfig.DEBUG create another boolean variable at lib-project’s e.g. BuildConfig.RELEASE and link it with application’s buildType.

https://gist.github.com/almozavr/d59e770d2a6386061fcb

参考stackoverflow上的这篇帖:

http://stackoverflow.com/questions/20176284/buildconfig-debug-always-false-when-building-library-projects-with-gradle

6、

每次保存的时候,每行多余的空格和TAB会被自动删除(例如结尾、空行的多余空格或TAB)

特别是每次准备提交SVN,Review代码时候你就蛋疼了,显示一堆不相关的更改,看的眼花。

 

解决方法:

Settings->IDE Settings->Editor->Other->Strip trailing spaces on Save->None

7、

编译的时候,报:Failure [INSTALL_FAILED_OLDER_SDK]。一般是系统自动帮你设置了compileSdkVersion

 

解决方法:

修改build.gradle下的compileSdkVersion ‘android-L’为compileSdkVersion 19(或者你本机已有的SDK即可)

8、

> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2

 

解决方法:

在工程的gradle中设置

可以支持超过65k的方法数

defaultConfig {        
    // Enabling multidex support.
    multiDexEnabled true
}

9、

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: ch/boye/httpclientandroidlib/ConnectionClosedException.class

 

解决方法:

重复包,把对应重复的删除即可一般为v4冲突

 10、

Suggestion: add 'tools:replace="android:icon"' to <application> element at AndroidManifest.xml

 

解决办法:

  • 在Manifest标签下添加
xmlns:tools="http://schemas.android.com/tools"
  • 在Application标签下添加
tools:replace="android:icon"

11、

Error:Execution failed for task ':transformClassesWithDexForArmv7Release'.> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/bin/java'' finished with non-zero exit value 3

 

解决:

dexOptions {    
javaMaxHeapSize "4g"
}

 

12、
多语言未翻译问题

解决:
可以在lint.xml中加入

<issue
id="MissingTtanslation"
severity="ignore"
/>

或者更干脆点,按照studio的提示来
打开项目目录下的build.gradle文件(这就是gradle的配置文件,gradle就是编译工具了),然后按照提示一股脑把新参数全部加到android里面。

android {
lintOptions{
checkReleaseBuilds false
abortOnError false
}}

这样打包就不成问题了。checkReleaseBuilds就是在打包Release版本的时候进行检测,这里就直接关掉了,也可以打开,这样报错还会显示出来。关键的就是abortOnError一定要设为false,这样即使有报错也不会停止打包了。

15、

 

FATAL EXCEPTION: main

 Process: com.wanda.property_client, PID: 11910

 java.lang.NoClassDefFoundError: org.apache.cordova.PluginEntry

导致4.4系统安装程序直接崩掉

 

解决:

在application中加入:

protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
   MultiDex.install(this);
}

16、

Gradle sync failed: 'com.android.build.gradle.BasePlugin' does not implement the Plugin interface

 

解决:

在gradle中修改 

classpath 'com.android.tools.build:gradle:0.14.0+'

classpath 'com.android.tools.build:gradle:2.1.0'

Error:'com.android.build.gradle.BasePlugin' does not implement the Plugin interface

解决:Error:’com.android.build.gradle.BasePlugin’ does not implement the Plugin interface
  • ruo_62
  • ruo_62
  • 2016年08月16日 08:48
  • 1220

Android studio使用过程中遇到的问题

一、快捷键问题 用习惯了eclipse,开始用Android studio还真是不爽,那就在File->Settings-> Keymap 在弹出的选项卡中选择Eclipse,确定,好了快捷键还是原来...

Android Studio使用过程中遇到的一些问题及解决方案

转自:http://zmywly8866.github.io/2015/11/11/android-studio-problem-solution-and-tips.html 说明:这是直接...

Android Studio-—使用OpenCV的配置方法和demo以及开发过程中遇到的问题解决

原帖:http://www.cnblogs.com/yunfang/p/6149831.html 前提:       1.安装Android Studio(过程略)       2....

eclipse转成Android studio过程中遇到的问题

Android studio使用过程中遇到的问题 问题汇总: 现在最新的Android Studio对以前的基于Eclipse ADT的项目的支持已经很好了,一般情况只需要通过File-> Imp...

Android studio 编译过程中 遇到的gralde文件编译的问题

最近在做一个新的功能,但是忽然也不知道因为改了什么,studio的gradle文件,编译报错了,最后经过网上搜索发现了一个奇怪的问题,今天就顺便告诉一下大家, 在grale编译过程中,需要注意 co...

Eclipse项目导入Eclipse以及、Android Studio过程中遇到的问题.

刚进公司,接手一个app,跟原先负责的大哥沟通比较困难,主要是他太忙了,而且久了很多东西都忘了,加上自己现在还比较菜,所以很搞了两天才能正常的导入。现在就来记录一下在导入的过程中出现的问题。 1.Ec...

Eclipse转Android Studio 项目过程中遇到的问题

command 'D:\Program Files\Java\jdk1.7.0_45\bin\java.exe''finished with non-zero exit value 2

Android eclipse转studio过程中遇到的问题

1.     Svn的使用 https://my.oschina.net/fyyy/blog/519353  说明,eclipse里可能直接用的插件安装的svn,但是as必须本地安装,默认ecli...

Android Studio使用过程中碰到问题及解决方案整理

问题1, 资源文件问题出现: Error:Execution failed for task ':app:mergeDebugResources'. > Crunching Cruncher scr...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android studio使用过程中遇到的问题
举报原因:
原因补充:

(最多只允许输入30个字)