以下环境为Android Studio 1.3.2,Gradle 2.7(as自带2.4,另下载的2.7)

编译时提示Multiple dex files define: Lcom/sina/weibo/sdk/BuildConfig异常

新浪微博提供的SDK里所带的weibosdkcore.jar里包含了BuildConfig类,而api工程也会生成同名(包名也相同)类,所以有此编译异常。解决方法是用工具(如7zip)直接删除weibosdkcore.jar里的BuildConfig.class文件。还有其他解决方法,这个链接不错。

无法clean project

有时clean后仍然有文件残留(例如classes.jar),此时需要手工删除项目路径下的build目录(删除时可能会提示classes.jar被占用,多半是as自己在使用,可关闭as再重试)。比较恶心的是,clean时并不会提示你有文件无法删除。

两个project共享一个module

假设自己写了一个android library(名称library1),然后想在Project1和Project2里都使用它,但不把library1复制两份。窍门是在project2的setting.gradle文件里像下面这样引用project1里的资源:

include ':../project1/library1'

参考链接

Configuration with name 'default' not found.

检查settings.gradle文件里,include的module是否存在,通常是include了不存在的module造成的。参考链接

Proguard提示Duplicate Entry错误

多个module依赖多个相同的jar文件时会有这个问题,我当时遇到的是xutils,解决办法是在jcenter上找到了对应的repository,改为不直接使用jar而是使用repository解决。Proguard Troubleshooting

用proguardFile还是proguardFiles?

在build.gradle里指定项目proguard配置文件时,用proguardFiles可以同时指定多个,用proguardFile可指定一个(可多行),经测试效果是一样的。注意:在module settings对话框里可能会显示不出来正确的文件名。还有一个变化:比较新的as版本缺省文件名是proguard-rules.pro,以前是proguard-rules.txt。

被依赖module里BuildConfig.DEBUG的值总为false

例如module A依赖module B和module C,在Eclipse里运行时B和C里BuildConfig.DEBUG的值会是true(导出签名apk后会自动变成false);然而在Android Studio里B和C里的BuildConfig.DEBUG值总是false,A里的正常。这样就导致if(BuildConfig.DEBUG){Log.d(...)}日志无法正常显示。参考链接 参考链接2

AndroidStudio的一些坑的更多相关文章

  1. 深踩 AndroidStudio 缓存的坑

    本文记录的是今天在群里提到的昨天所踩的一个坑,有关 AndroidStudio 缓存的. 先说一下背景. 我负责的一个项目,对一个图表库有外部依赖.这个图表库是我在维护的,由于新功能在开发中,所以我就 ...

  2. AndroidStudio 中的坑Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRID

    将 build.gradle 中 的 classpath改为2.0.+ dependencies { classpath 'com.android.tools.build:gradle:2.0.+'然 ...

  3. AndroidStudio跑起来第一个App时新手遇到的那些坑

    场景 当你看了一个Android教程,满心欢喜想要运行第一个HelloWorld时却发现,Android Studio新建的工程老是报错. 会编译不通过.运行按钮灰色.没有虚拟机,一个简简单单的Hel ...

  4. Gradle AndroidStudio内网离线构建配置踩坑记录

    最近一家新公司,由于办公环境都是在内网机上,导致在Unity导出android工程后,gradle离线构建也是第一次搞,花了一天时间也踩了一些坑,最后也终于构建成功了,这里记录下,方便大家少走些弯路. ...

  5. 首次使用AndroidStudio创建hello world遇到的坑!(Mac系统下)

    第一次用AS,且不说它SDK配置的琐碎,光建立第一个简单的HelloWorld项目的配置包问题就把我卡了一天.这个坑必须记录一下,

  6. Androidstudio坑

    1.intel haxm sdkmanager显示不可选中,而且boost设置好了intervt 解决:重新关闭,打开系统,然后开启.... 2.解决不了一直报错,(自己的代码,明明已经没有问题) 有 ...

  7. AndroidStudio修改默认C盘配置文件夹(.android.gradle.AndroidStudio)以及修改后避免踩的坑

    场景 AndroidStudio下载安装教程(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103672471 在上 ...

  8. Androidstudio与unity交互踩坑(黑屏问题)

    unity打包好的apk运行出现黑屏,made with unity的界面都没有出现 原因是android项目中MainActivity没有继承UnityPlayerActivity

  9. 整理分享原生态mac AndroidStudio的快捷键

    使用AndroidStudio开发半年了,一路爬坑至今,刚由Windows转mac一个星期.通过查些资料和自己摸索,记录一些常用的快捷键,犹豫个人不喜欢改快捷键,所以都是原生的.特此分享给大家!欢迎补 ...

随机推荐

  1. Swift +AFNetworking3.0 Get

    let manager = AFHTTPSessionManager() let url = "http://v.juhe.cn/weather/index" let ," ...

  2. Daily Scrum 12.2

    今日完成任务: 完成数据库文档说明:整理数据库(没整理完),明天继续:文档功能的修改以及在服务器上测试 明日任务: 黎柱金 整理数据库 孙思权 整理数据库 晏旭瑞 文档上传下载功能 冯飘飘 修复问题提 ...

  3. apache端口的修改

    apache 这个web服务默认在80端口监听...如果你访问一个网站 http://www.baidu.com  则默认一个端口是80 1.      一台机器可以有 1-65535 号端口 2.  ...

  4. 20145225 《Java程序设计》第2周学习总结

    20145225<Java程序设计> 第2周学习总结 教材学习内容总结 3.1.1Java的类型 分为基本类型(Primitive type)和类类型(Class type) 基本类型: ...

  5. Exception-异常

    异常(Exception)是程序执行过程中所产生的问题 产生原因:用户输入无效数字.找不到需要打开的文件.在通讯中网络连接中断.JVM发生了内存溢出 异常的三个种类:检查异常.运行时异常.错误(类似异 ...

  6. 图片大小的模式UIViewContentMode

  7. ADB工具常用指令和使用情形分析

    一.ADB常用命令:(不需要进到设备,也就是:不需要执行adb shell) adb devices 列出所有的已连接的设备 adb kill-server 关闭adb adb start-serve ...

  8. 用PhpStorm IDE创建GG App Engine PHP应用教程

    在上一篇教程里我们已经介绍了如何为PhpStorm搭建软件环境,那么今天就该是正式的开始创建App了: 3.创建首个Google App Engine PHP Application 现在我们就可以开 ...

  9. Webpack使用教程二

    Webpack提供了很多的命令选项来帮助用户构建应用,如果只是通过命令行来使用这些选项,会显得不方便.为了更好的使用Webpack提供的各种命令选项,我们可以创建一个webpack.config.js ...

  10. C++类库介绍

    如果你有一定的C基础可能学起来比较容易些,但是学习C++的过程中又要尽量避免去使用一些C中的思想:平时还要多看一些高手写的代码,遇到问题多多思考,怎样才能把问题抽象化,以使自己头脑中有类的概念:最后别 ...