本文主要推荐给由Eclipse开发转向使用Android Studio(如下简称:AS)的开发者,介绍AS最基本以及最经常使用的功能,老司机请绕道哦O(∩_∩)O,以避免耽误宝贵的时间。html
主要内容:java
(1)环境搭建android
(2)新建项目(含Module建立)android-studio
(3)代码混淆oracle
(4)经常使用调试功能及应用分析相关工具
(5)打包APKgradle
1、环境搭建(Windows)ui
(1)安装JDK,下载地址,注意AS要求JDK7及更高版本,安装过程再也不赘述;.net
(2)AS下载,若是因特殊缘由不能官网下载,请移步这里下载;调试
(3)AS安装
1.注意选择本身合适的安装位置,以下图:
2.顺利的话一步一步安装成功,出现如下界面:
3.首次运行配置
4.顺利的话就能够进入AS启动页面了,若是出现Android SDK下载失败,请移步这位朋友写的处理方法进行处理。
2、新建项目(含Module建立)
(1)建立项目
进入AS,左上角单击File->New->New Project,以下:
进入如下界面:
下一步:
下一步:
下一步:
完成。
(2)主界面介绍
(3)预览
(4)建立Module
对于中大型项目AS提供了Module(即模块),主要便于项目分层以及分离逻辑,使项目逻辑更加清晰也便于项目维护。建立模块以下:
进入如下页面:
进入下一步,完成建立后以下:
关于Module的建立及使用能够参考个人另外一篇文章。
2、代码混淆
AS项目由Gradle构建及管理项目,应用相关的不少信息均可以在这里设置,以下:
AS中进行代码混淆须要在build.gradle文件和proguard-rules.pro文件中进行设置(能够经过jd-gui工具对比混淆先后效果):
(1)build.gradle文件
minifyEnabled:表示是否开启混淆,默认为false
proguardFiles:混淆配置文件,通常就采用项目中默认的proguard-rules.pro文件。
(2)proguard-rules.pro文件
混淆设置,具体可参考progurad官网。
注意图中红框部分,由于全部jar包(此处已JAR包混淆举例,APP混淆与此相似)都要求有对外接口(没有对外接口的模块通常也没什么意义),有多种种方式设置对外接口类:
a:-keep public class *,例如:
-keep public class * {
public protected *;
}
b:如上图所示。
由于一个模块通常有不少类文件,混淆时咱们但愿除对外接口类的其余全部类文件的类名也进行混淆,那么就能够单首创建一个基类或接口,让对外的接口类继承该基类或接口。
c:-keep public class XXX,特定类不混淆,例如:
-keep public class xiaoshubao.player.UserLogin{
public protected *;
}
4、经常使用调试功能及应用分析相关
(1)建立模拟器(建立过程省略)
(2)运行模拟器
(3)应用分析相关
1.日志输出,如上图所示。
2.内存分析
a:
b:
c:
d:内存信息采集
e:使用MemoryAnalyzer(MAT)分析内存泄露
首先,直接将上一步生成的hprof文件导入MAT工具中是没法使用的,须要进行转换,有两种方式能够实现转换:
将Snapshot_2016.07.20_21.52.57.hprof文件拷贝至e:/1/文件夹下,cmd到hprof-conv.exe目录下并执行转换命令,以下:
生成目标3.hprof文件,以下:
MAT中导入转换后的hprof文件,以下所示:
CPU、GPU等选项卡就再也不赘述了,你们能够本身研究。
5、打包APK
Build->Generate Signed APK
出现如下界面:
(1)建立新的JKS签名文件,以下:
(2)选择现有的JKS文件
(3)咱们这里演示建立新的JKS签名文件,以下:
点击OK,出现以下界面:
点击Next,以下:
点击Finish,成功生成带咱们本身签名的APK文件:
之后APP新版本发布时就可使用刚才生成的JKS文件进行签名,注意同一APP新版本的签名文件必须与旧版本的签名文件为同一个,多个APP能够共用同一个签名文件,缘由就很少说了。
总结,本文主要讲解使用AS建立项目、调试项目、发布的最基本使用,随着熟悉程度的提升你们均可以本身深刻研究,好比Gradle构建、内存分析等等。