工欲善其事,必先利其器
##常用快捷键
- Ctrl +Alt+M 抽出方法
- Ctrl+Alt+F 局部变量抽成为全局变量
- F11 加书签
- Ctrl +alt+t 常用结构
- Ctrl +alt+u 大小写
- 双击shift 全局搜索
- Ctrl+N搜索类
- Ctrl+F文件中搜索
- Ctrl+shift+N搜索文件
- Ctrl+shift+F全局查找
- Ctrl+F12 大纲
- 任何可以判断的语句后面加上.if
- shift + F4 新窗口打开
- ctrl+ o 重载
- ctrl+tab 切换
- 查找项目中的方法或变量【Ctrl+Shift+Alt+N】
- 查找文件【Ctrl+Shift+N】
- 查找类【Ctrl+N】
- 在当前工程内查找文本【Ctrl+Shift+F】
- 在类中快速定位某个方法或属性Ctrl+F12
##应用编译过程中,立即停止编译的方法
进入项目文件夹,然后输入以下命令即可
mac
./gradlew --stop
window
gradlew --stop
##gradle更新办法
更新方法:
第一步:在你所在项目文件夹下:你项目根目录\gradle\wrapper\gradle-wrapper.properties
修改gradle-wrapper.properties最后一行的地址(我的是:distributionUrl=http://services.gradle.org/distributions/gradle-2.1-all.zip),最新gradle地址从官方下载的地方有。比如目前最新的版本是:gradle-2.13-rc-1-all。然后将上面的distributionUrl=http://services.gradle.org/distributions/gradle-2.1-all.zip替换成:distributionUrl=http://services.gradle.org/distributions/gradle-2.13-rc-1-all.zip就行。
第二步;在Android studio的终端Terminal输入gradlew build执行命令,等一会出现BUILD SUCCESSFUL,说明更新成功。
如下载慢,可参考如下一些方法,但是本人未亲测:
附上官网地址和gradle各版本下载地址:
官网:http://gradle.org/release-candidate/
gradle各版本下载地址
http://services.gradle.org/distributions
下载到目录:C:\Users\mo.gradle\wrapper\dists
##可以预览而且在手机上不显示的功能
'tools:something="value"'属性
##Android Studio导入jar后无法识别、但项目能正常运行的问题
Android Studio默认的jar存储位置和eclipse不同!jar必须放在src/main/jniLibs文件夹下,同样so文件必须放在src/main/jniLibs/armeabi中。
libs放aar文件
##加入jdk1.8支持
project build 添加
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'me.tatarka:gradle-retrolambda:3.3.0'
}
}
module 添加
apply plugin: 'me.tatarka.retrolambda'
##127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次
打开cmd输入
netstat -ano | findstr 127.0.0.1:5037
在任务管理器关掉相应的程序
或者使用adb idea 点击 start app 重新restart一下即可
##常用插件
Genymotion插件
打开settings界面里找到plugins设置项,点击右侧的Browser,搜索栏里输入genymotion关键字,可以看到右侧已经搜索到插件,点击install安装
android-butterknife-zelezny
右键初始化
Gsonformat
可根据json数据快速生成java实体类
右键选择gsonformat
Lifecycle Sorter
可以根据Activity或者fragment的生命周期对其生命周期方法位置进行先后排序,快捷键Ctrl + alt + K
JsonOnlineViewer
可实现直接在android studio中调试接口数据,可以选择请求类型,自定义请求头及请求体,json数据格式化后展示
butterKnife
android code generator
android selectors gnerate
Postfix completion
后缀
##Rxjava配置
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
compile 'io.reactivex:rxjava:1.2.0'
compile 'io.reactivex:rxandroid:1.2.0'
##Android Studio关闭拼写错误提示
File–>Settings,在左侧面板选择Editor–>Inspections,右侧找到Spelling选项,将其后面复选框的对勾去掉,然后保存即可
##自动import
File–>Settings,在左侧面板选择General–>Auto Import,右侧选中Add unambiguous imports on the fly,然后保存即可。
##改变logcat颜色
| Log级别 |色值|
|—
|VERBOSE| BBBBBB
|DEBUG | 0070BB
|INFO | 48BB31
|WARN | BBBB23
|ERROR | FF0006
|ASSERT | 8F0005
##Android studio 更新
##ButterKnife 8.0.1版本在AndroidStudio中的配置
http://www.jianshu.com/p/bf9018c1a7f6
-
Project的build.gradle文件中增加classpath
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’ -
在Module的build.gradle文件中增加plugin
apply plugin: ‘com.neenbedankt.android-apt’ -
在Dependencies中增加下面两句
compile ‘com.jakewharton:butterknife:8.4.0’
apt ‘com.jakewharton:butterknife-compiler:8.4.0’
##使用volley的时候HttpClient添加了jar依然报错 Android studio无法使用HttpClient解决
Android studio里在相应的module下的build.gradle中加入即可。
android {
useLibrary 'org.apache.http.legacy'
}
##android studio 代码提示不区分大小写
setting - code completion
##设置正在运行时的正式keystore
##性能分析
android lint
android monitor
##如何设置忽略文件:
这真是android studio的一个坑啊,将本地代码提交到svn服务器上有两种方式:VCS–>Import into version control–>share project或者import into subversion;强烈建议使用第二种!但是提交完之后本地并没有跟svn建立起连接,只是单纯的把代码提交了;提交完之后需要VCS–>checkout from version control–>subversion将刚才提交的代码拉到本地【速度很快,因为本地代码与svn服务器上代码一模一样】;然后才开始正式设置忽略文件:右键选中要忽略的文件【夹】–>TrotoiseSVN–>unversion and add to ignore list;将要忽略的文件都设置完之后再通过cvs提交一下,服务器上的代码也就自动忽略了;切记!!!万不可以通过share project来将本地代码提交到服务器上!否则本地设置忽略之后也没有用!!!!提交不到svn服务器上!!!
##如何通过tortoisesvn将本地文件夹与svn服务器断开连接:
1、断开svn与服务器的连接:file–>setting–>version control 选中version control然后将右侧的subversion替换为none就可以了
2、右键你需要断开连接的文件夹【连接状态的话会有一个绿色对号】–>tortoisesvn–>Export–>找到你要断开的文件夹–>选中Remove from subversion–>刷新一下;绿色的对号消失就代表断开连接了
##设置主题
https://github.com/xinghongfei/android-studio-setting
##阿里巴巴出的快速编译方案
##忽略文件写法
https://github.com/github/gitignore/blob/master/Android.gitignore
##加快编译速度
http://blog.csdn.net/zero_and_one/article/details/42009487
http://blog.isming.me/2015/03/18/android-build-speed-up/
##Log工具
http://blog.csdn.net/yy1300326388/article/details/45825343
Settings->Editor->Color & Fonts->Console Font 设置logcat字体大小
##将application设置为library
1、bundle中apply plugin: ‘com.android.application’ 设置为 apply plugin: ‘com.android.library’
2、library剔除applicationId属性
##添加AAR文件
项目budle设置
repositories {
flatDir {
dirs 'libs' //就是你放aar的目录地址
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile name: 'crouton', ext: 'aar'
}
##遇到的错误
Error:Execution failed for task ‘:clean’. > Unable to delete directory :\build\intermediates
进入studio,进入settings,搜索instant run,进入该界面,有四个选项,第一个默认是打勾的,去其去掉就可以了
Resources中getDrawable(int)过时
使用ContextCompat.getDrawable(this,R.drawable.ic_polyline_pause)
getResources().getColor过时
使用 ContextCompat.getColor(context, R.color.my_color)
Duplicate files copied in APK META-INF/DEPENDENCIES 解决办法
在app的目录下找到build.gradle 这个文件,在android标签的最后面加入以下信息:
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
unspecified on project app resolves to an APK archive which is not supported
apply plugin: ‘com.android.application’
这句话告诉了Gradle将ModuleB编译称为application,也就是apk,这就是问题的所在;
解决方法:将上面该句改为:
apply plugin: ‘com.android.library’
Android Studio出现Error:No service of type Factory available in ProjectScopeServices.
根目录的build.gradle
buildscript {
repositories {
jcenter()
}
dependencies {
classpath ‘com.android.tools.build:gradle:2.1.3’
classpath ‘com.jfrog.bintray.gradle:gradle-bintray-plugin:1.2’
classpath ‘com.github.dcendents:android-maven-gradle-plugin:1.3’
}
}
直接将’ classpath com.github.dcendents:android-maven-gradle-plugin:1.3’更新到1.4.1就可以解决问题了。
想在AS里试试GitHub,点击VCS–>Checkout from Version Control–>GitHub的时候弹出如下错误框:
1.从Github For Windows下载Windows版Github客户点并安装
2.安装成功后,连接你的GitHub账号
3.设置环境变量,添加git.exe的路径到Path。git.exe的路径类似:C:\Users\Your_Username\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\bin
如果不想设置环境变量,可以直接在AS里通过Setting–>Version Control --> Git --> Path to Git Executable里设置,设置路径例如:
C:\Users\Your_Username\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\bin\git.exe
设置完成后,再次点击VCS–>Checkout from Version Control–>GitHub的时候出现如下弹框,在AS可以正常连接github啦
官方案例导入不了
https://github.com/googlesamples/android-RecyclerView.git
##添加chuck的支持
一个简单的Android OkHttp客户端HTTP 检查器
1、项目build.gradle中的dependencies添加
debugCompile 'com.readystatesoftware.chuck:library:1.0.4'
releaseCompile 'com.readystatesoftware.chuck:library-no-op:1.0.4'
2、OkHttpClient配置添加
ChuckInterceptor chuckInterceptor = new ChuckInterceptor(context.getApplicationContext());
chuckInterceptor.showNotification(true);
OkHttpClient client = builder
.addInterceptor(chuckInterceptor)
.build();