AndroidStudio的一些坑
以下环境为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的一些坑的更多相关文章
- 深踩 AndroidStudio 缓存的坑
本文记录的是今天在群里提到的昨天所踩的一个坑,有关 AndroidStudio 缓存的. 先说一下背景. 我负责的一个项目,对一个图表库有外部依赖.这个图表库是我在维护的,由于新功能在开发中,所以我就 ...
- 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.+'然 ...
- AndroidStudio跑起来第一个App时新手遇到的那些坑
场景 当你看了一个Android教程,满心欢喜想要运行第一个HelloWorld时却发现,Android Studio新建的工程老是报错. 会编译不通过.运行按钮灰色.没有虚拟机,一个简简单单的Hel ...
- Gradle AndroidStudio内网离线构建配置踩坑记录
最近一家新公司,由于办公环境都是在内网机上,导致在Unity导出android工程后,gradle离线构建也是第一次搞,花了一天时间也踩了一些坑,最后也终于构建成功了,这里记录下,方便大家少走些弯路. ...
- 首次使用AndroidStudio创建hello world遇到的坑!(Mac系统下)
第一次用AS,且不说它SDK配置的琐碎,光建立第一个简单的HelloWorld项目的配置包问题就把我卡了一天.这个坑必须记录一下,
- Androidstudio坑
1.intel haxm sdkmanager显示不可选中,而且boost设置好了intervt 解决:重新关闭,打开系统,然后开启.... 2.解决不了一直报错,(自己的代码,明明已经没有问题) 有 ...
- AndroidStudio修改默认C盘配置文件夹(.android.gradle.AndroidStudio)以及修改后避免踩的坑
场景 AndroidStudio下载安装教程(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103672471 在上 ...
- Androidstudio与unity交互踩坑(黑屏问题)
unity打包好的apk运行出现黑屏,made with unity的界面都没有出现 原因是android项目中MainActivity没有继承UnityPlayerActivity
- 整理分享原生态mac AndroidStudio的快捷键
使用AndroidStudio开发半年了,一路爬坑至今,刚由Windows转mac一个星期.通过查些资料和自己摸索,记录一些常用的快捷键,犹豫个人不喜欢改快捷键,所以都是原生的.特此分享给大家!欢迎补 ...
随机推荐
- Java.web-application-development-environments-for-macosx
Java Web Application开发 1 下载需要的软件 使用的软件并没有采用最新的版本,只是采用了次新版本. 1.1 下载Eclipse的jee版本 eclipse-jee-luna-SR2 ...
- rocksdb编译测试的正确姿势
需要先安装 gflags 在进行 make db_bench 不然运行 db_bench 会出现 Please install gflags to run rocksdb tools 错误 bench ...
- 使用VPN服务器解决公司不能上淘宝的问题
很多公司为了保证员工的效率,通常采用屏蔽端口的方法屏蔽掉了一些网站,比如淘宝.QQ网页版等,这样做虽然也是公司的迫不得已,但是也有点不人性化,毕竟非上班时间也是上不去此类网站的.前些日子电商大站,抢不 ...
- iOS遍历程序内某个文件夹下所有文件的属性
项目中有个文件管理系统,在做本地文件管理操作的时候,遇到了遍历本地文件的问题 遍历到的文件有些不需要显示,而且需要得到文件的相关属性,在此总结下. //查找需要遍历文件夹的目录 NSString *k ...
- jsp-javabean练习1
package javaBean; public class JavaB2 { private String name="lhy"; private int xuehao=123; ...
- c# 身份证证号验证方法
#region 验证身份证是否有效 /// <summary> /// 验证身份证是否有效 /// </summary> ...
- 用scala实现一个sql执行引擎-(上)
前言 在实时计算中,通常是从队列中收集原始数据,这种原始数据在内存中通常是一个java bean,把数据收集过来以后,通常会把数据落地到数据库,供后面的ETL使用.举个一个简单的例子,对一个游戏来说, ...
- 『TCP/IP详解——卷一:协议』读书笔记——04
2013-08-18 16:31:17 第2章 链路层 2.1 引言 链路层主要有三个目的: 为IP模块发送和接受IP数据报 为ARP模块发送ARP请求和接受ARP应答 为RARP发送RARP请求和接 ...
- Hyper-V初涉_早期Windows安装虚拟硬件驱动
虽然微软已经一再强调将要对Windows XP停止提供服务,但是难免在一些特殊场合需要早期的系统进行测试.为了测试需要,我在Hyper-V中安装了Windows XP. 按照之前的方法,对Hyper- ...
- C++混合编程之idlcpp教程Python篇(4)
上一篇在这 C++混合编程之idlcpp教程Python篇(3) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相似,工程PythonTutorial2中,同样加入了三个文件 Pyt ...