必会 | 手把手带你体验Android Studio 3.0的新功能
昨天听说Studio除了稳定版本的3.0,立马升级了一波~~顺便看了下官网的介绍,实际操作了一哈,下面给大家介绍下一些新功能。
其实官网上有4个视频基本上介绍了对应的功能,四个视频我也替大家下载了,包括gradle-4.1的zip,我上传到百度云了,可以在文末下载。
不要急着拖到文末,先看下Studio 3.0带来的一些惊艳的功能吧~~
第一个介绍的是设备的文件管理器,我非常喜欢这个面板,介绍下实用的功能:
读取我们debug包的data/data/packageName下的文件,prefs、数据库文件等。
我们可以在data/data/下选择一个我们自己的app:
我们可以直接查看我们的应用程序的内部文件,部分可以直接打开,比如xml文件等,并且我们可以直接右键新建、删除、上传任意文件(提取sp、数据库文件等)。
比如我上周需要复现一个case,需要用到一个特定的sp文件,就需要想办法push到特定的位置。之前都是run-as,然后从sdcard mv过去。
现在就方便多了。
还有个方便之处就是从SdCard中存取文件变的方便了~
这个功能在之前的版本也有,就是我们可以直接打开一个apk文件(File->Open):
可以apk中的资源,类信息等,那么这个版本又做了一些优化:
首先是支持上传mapping文件了,比如我们一个混淆后的apk,会同时生成一个mapping文件,可以很方便的还原混淆(点击上面框住的按钮即可)。
初次以外还增加了一些功能:
直接查看某个类反编译后的字节码:
直接查看某个方法的引用情况:
直接生成某个类、字段、方法的keep rule:
以上操作可以是任意apk,好像对反编译很有帮助~~
这个可以在下图位置找到:
其他的面板找不到,也可以在这里找到。
主要用于性能分析,和之前的Monitor类似,但是功能强大了不是一点~
最上面会记录每个Activity的打开,以及你的一些操作(上面的小圆点,点击按钮等)。
下面分别是CPU、内存、网络。
先看下网络:
我点击了一下拉取数据,可以看到有一次明显的网络传输,我们按住左键然后框选这个区域:
可以看到我们本地网络请求返回的数据,本例是json;以及请求的相关信息;以及调用栈。
是不是感觉跟抓包有点像~
有没有被惊艳到!
CPU和内存的话类似,可以实时的监控当前的数据,并支持点击录制(再次点击关闭),会自动进行分析,效果图如下:
内存:
CPU:
这块有兴趣的可以好好研究哈~~
3.0也对Java8带来了更好的支持,下面通过几个小例子展示下:
首先记得,在build.gradle文件中写入:
android { //...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
或者可以可视化的操作:
File->Project Structure
选中module,指定为1.8也会在build.gradle文件中自动写入。
现在我们编写一段常见的代码:
mBtn = findViewById(R.id.id_btn);
mBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Toast.makeText(
SecondActivity.this,
"嘿嘿嘿",
Toast.LENGTH_SHORT).show();
}
});
看一段Gif吧:
可以看到其对lambda支持,且支持匿名内部类到lambda的自动转化,非常方便我们熟悉lambda语法。
我们再看一个Java8的特性,在Java 8中,接口内是允许有默认的方法(实现了该接口即包含该方法)和静态方法的。
public interface IFun {
default String testDefaultMethod() {
return "I am default method";
}
static String testStatisMethod(){
return "I am static method.";
}
}
可以支持直接这么写了。
当然并非所有的特性都支持所有版本了,还是有部分特性需要在24以上才能支持:
继续往下看吧~~
这个之前的版本插件也都支持了~~简单说一哈~
新建项目的支持可以选择support kotlin
也可以在以前的项目中,直接New Kotlin File:
可以选择New Activity,选择:
还可以将某个Java类直接转化为Kotlin File
好了,大致介绍这么多,还有更多的可以在官网中探索~
首先Studio更新很简单,直接Check for Updates即可:
这个想必都没问题。
安装重启后,会提示你去更新gradle tool,这里建议你对老项目先暂时点击dont remind me on this project,以防有坑。
新建一个项目玩一哈,提示你可以点击确定。当然你也可以手动去更新,需要修改两个地方:
项目的build.gradle(不是module):
更新到3.0.0,你也可以在仓库中加上google()。
点击gradle-wrapper.properties,修改gradle文件为4.1。
然后点击同步....
这里有很大可能性,你会没有办法下载成功该文件,read timeout之类的错误。
不要担心,这个文件我放在百度云,可以下载下来,然后放到用户目录的(Mac):
该目录下,zip文件直接放入:
然后重启Studio即可。
windows一般在 C:\Users\Administrator\.gradle
注意:Java8 support 一定需要在gradle插件配置成功后。
对于Android Profiler你可以也会遇到没有办法框选的问题:
点击Run Config:
可能你是一个老项目,API<26。
有两个办法:
1、更新API到26
2、按照上述更新gradle plugin,然后Enable的复选框就可以选择了。
你可能用上的文件下载(官方介绍视频和gradle-4.1.zip)直接公众号内回复:AS3 获取(防止链接失效,方便我更新回复~)。
欢迎长按下图->识别图中二维码或者扫一扫关注我的公众号:
如果你有想学习的文章直接留言,我会整理征稿。如果你有好的文章想和大家分享欢迎投稿,直接向我投递文章链接即可。
死板、呆萌、宅、不解人意…作为一名敲代码为生的程序员,你是不是被旁人贴过太多不属于你的标签?
1024程序员节这天,100offer给你一个撕掉标签的机会:关注100offer微信号,发送一段话/一张图/一段视频/一条语音…展示你除了敲代码以外的神技能,还有最高价值1024元的“程序员兴趣基金”等你拿!