首页 > 代码库 > Android Studio使用心得 - 常见问题集锦

Android Studio使用心得 - 常见问题集锦

FBI Warning:欢迎转载,但请标明出处:http://blog.csdn.net/codezjx/article/details/38669939,未经本人允许请勿用于商业用途,感谢支持!


整理了一些这段时间遇到的常见问题。希望对各位猿们有帮助。。

。假设认为实用就点个赞哦


问题一:

Error:(26, 9) Attribute application@icon value=http://www.mamicode.com/(@drawable/logo) from AndroidManifest.xml:26:9

Error:(28, 9) Attribute application@theme value=http://www.mamicode.com/(@style/ThemeActionBar) from AndroidManifest.xml:28:9
is also present at XXXX-trunk:XXXXLib:unspecified:15:9 value=http://www.mamicode.com/(@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



问题二:

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



问题三:

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

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


解决方法:

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



问题四:

编译的时候,报:Failure [INSTALL_FAILED_OLDER_SDK]。

通常是系统自己主动帮你设置了compileSdkVersion 


解决方法:

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





Android Studio使用心得 - 常见问题集锦