Java 8语言功能支持
您现在可以使用某些Java 8语言功能并使用Java 8构建的库。不再需要 Jack。您应该首先 禁用Jack 以使用内置的支持Java 8的默认工具链。
要更新项目以支持新的Java 8语言工具链,请将 Project Structure对话框中的 Source Compatibility 和 Target Compatibility 更新为1.8 (单击 File > Project Structure)。要了解更多信息,请阅读如何 使用Java 8语言功能。
Android Profiler
新的Android Profiler 取代了Android监视器工具,并提供了一套新的工具来实时测量应用程序的CPU,内存和网络使用情况。您可以执行基于样本的方法跟踪来执行代码,捕获堆内存,查看内存分配以及检查网络传输文件的详细信息。
要打开,请单击 View > Tool Windows > Android Profile (或单击工具栏中的 Android Profiler )。
窗口顶部的事件时间轴显示触摸事件,按键和活动更改,因此您有更多的上下文可以了解时间轴中的其他性能事件。
注意:该logcat的视图也移动到一个单独的窗口(这是先前的Android Monitor,后者除去内侧)。
从Android Profiler的概述时间轴上,单击 CPU、MEMORY或 NETWORK时间线以访问相应的分析器工具。
CPU Profiler
CPU Profiler可帮助您通过触发示例或仪表化的CPU跟踪,来分析应用程序的CPU线程使用情况。然后,您可以使用各种数据视图和过滤器来解决CPU性能问题。
有关更多信息,请参阅 CPU Profiler指南。
内存分析器
内存分析器可以帮助您识别 内存泄漏和内存流失 导致的卡顿、冻结甚至应用程序崩溃。它显示了应用程序内存使用的实时图形,可以捕获堆转储,强制垃圾收集和跟踪内存分配。
有关详细信息,请参阅 内存分析器指南。
网络分析器
网络分析器允许您监视应用程序的网络活动,检查每个网络请求的有效负载,并链接到生成网络请求的代码。
有关详细信息,请参阅 网络分析器指南。
APK剖析和调试
Android Studio现在允许您对任何 APK 进行配置和调试,而无需将其从Android Studio项目中构建 - 只要构建APK 即可启用调试,并且您可以访问调试符号和源文件。
要开始使用,请从Android Studio Welcome屏幕中单击 Profile or debug APK。或者,如果您已经打开了项目,请从菜单栏中单击 File > Profile or debug APK。这将显示已解压缩的APK文件,但它不会反编译代码。因此,要正确添加断点和查看堆栈跟踪,您需要附加Java源文件和本机调试符号。
有关详细信息,请参阅 配置文件和调试预构建的APK。
设备文件浏览器
新的设备文件资源管理器允许您检查连接的设备的文件系统,并在设备和计算机之间传输文件。这将替代DDMS中可用的文件系统工具。
要打开,请单击 View > Tool Windows > Device File Explorer。
有关详细信息,请参阅 设备文件资源管理器指南。
即时应用支持
对Android Instant Apps的新支持允许您使用两种新的模块类型 (即时应用模块和功能模块(这些要求您安装Instant Apps开发SDK)) 在项目中创建Instant Apps 。
Android Studio还包含一个新的模块化重构操作,可帮助您在现有项目中添加对Instant Apps的支持。例如,如果要重构项目以在Instant App功能模块中放置一些类,请在“ 项目”窗口中选择类,然后单击Refactor > Modularize。在出现的对话框中,选择类应该去的模块,然后单击确定。
当您准备测试 Instant Apps 时,您可以在运行配置启动选项中指定即时应用程序的URL,在连接的设备上构建并运行Instant App模块:选择 Run > Edit Configurations,选择您的即时应用程序模块,然后在启动选项下设置URL 。
有关详细信息,请参阅 Android Instant Apps。
Android Things模块
新建项目和新建模块向导中的新Android Things模板可帮助您开始开发适用于Android的 IOT设备。
有关详细信息,请参阅 如何创建Android Things项目。
自适应图标向导
Image Asset Studio现在支持绘制矢量图,并允许您为Android 8.0创建自适应启动器图标,同时为旧设备创建传统图标(“旧”图标)。
要开始,请右键单击项目中的res文件夹,然后单击 New > Image Asset。在 Asset Studio 窗口中,选择启动器图标(自适应和旧版)作为图标类型。
注意:您必须设置compileSdkVersion为26或更高才能使用自适应启动器图标。
有关更多信息,请参阅 自适应图标。
支持字体资源
为了支持Android 8.0中的新字体资源,Android Studio包含一个字体资源选择器,用于将 字体 绑定 到应用程序中或配置项目以下载设备上的字体(如果可用)。布局编辑器还可以预览布局中的字体。
要尝试下载字体,请确保您的设备或模拟器正在运行Google Play Services v11.2.63或更高版本。有关更多信息,请参阅 可 下载的字体 。
Firebase App Indexing Assistant
Firebase Assistant已经更新了一个新的教程来测试App Indexing。要打开助手,请选择 Tools > Firebase。然后选择 App Indexing > Test App Indexing.。
该教程包括测试您的公开和个人内容索引的新按钮:
- 在步骤2中,点击 Preview search results 以验证您的网址是否显示在Google搜索结果中。
- 在步骤3中,单击 Check for errors 以验证应用程序中的可索引对象是否已添加到个人内容索引。
Android App Links助手
该应用程序链接助手 已经更新了以下新功能:
- 为每个URL映射添加URL测试,以确保您的意图过滤器处理实际的URL。
您还可以使用 下面描述的标签手动定义这些URL测试。
- 使用适当的对象条目创建数字资产链接文件以支持Google Smart Lock,并将相应的asset_statements 标签添加到清单文件中。
网址 Intent过滤 验证器
Android Studio现在支持清单文件中的特殊标记,允许您测试您的意图过滤器URL。这些是App Links Assistant可以为您创建的相同标签。
要为 Intent过滤 声明一个测试URL,请在元素旁添加一个元素。例如:
<activity …>
…
<tools:validation testUrl=“https://www.example.com/recipe/1138” />
确保也包含xmlns:tools=”http://schemas.android.com/tools”在标签中。
如果任何一个测试URL未通过 Intent过滤 定义,则会出现lint错误。这样的错误仍然允许您 构建调试变量,但会破坏您的发行版本。
布局编辑器
在布局编辑器已经更新了一些增强功能,包括以下内容:
- 新的工具栏布局和图标。
- 在组件树中更新布局。
- 改进的拖拽 视图插入。
- 在编辑器下面显示新的错误面板,显示修复建议的所有问题(如果可用)。
- 使用 ConstraintLayout 构建的各种UI增强功能 ,包括以下内容:
- 新支持 创建 分界线(栅栏)。
- 新支持创建组:在工具栏中,选择 Guidelines > Add Group (需要ConstraintLayout 1.1.0 beta 2 或更高版本)
- 创建链接的新UI:选择多个视图,然后右键单击并选择 Chain。
布局检查器
该布局检查包括增强您的应用布局,以使其更容易调试问题,包括分组属性分为普通类和两个新的搜索功能,查看 View Tree 和 Properties 窗格。
APK分析器
您现在可以使用该apkanalyzer工具从命令行使用APK分析器 。
APK分析器也已更新,具有以下改进:
- 对于使用ProGuard构建的APK,您可以加载将功能添加到DEX查看器的ProGuard映射文件,其中包括:
- 粗体节点 指示节点 在 Shrink 代码时不应被移除。
- 用来显示在 Shrink 过程中被删除的节点 的按钮。
- 用于恢复 View树 视图中由ProGuard 混淆的节点的 原始名称 的 按钮。
- DEX 视图现在会 估计 对 每个包、类和方法 影响的大小。
- 顶部的新过滤选项可显示和隐藏字段和方法。
- 在树视图中,DEX文件中未定义的引用节点 以斜体显示。
有关详细信息,请参阅 使用APK分析器分析您的构建 。
预览D8 DEX编译器
Android Studio 3.0包括一个可选的新DEX编译器,称为D8。它将最终替代DX编译器,但您现在可以选择使用新的D8编译器。
DEX编译直接影响应用程序的构建时间、.dex文件大小和运行时性能。而将新的D8编译器与当前的DX编译器进行比较时,D8可以更快地编译并输出较小的 .dex文件,同时具有相同或更好的应用程序运行时性能。
要尝试,请在项目的 gradle.properties 文件中设置以下内容:
android.enableD8=true
有关更多信息,请参阅有关 D8编译器的博文
Google的Maven资源库
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
最后
我坚信,坚持学习,每天进步一点,滴水穿石,我们离成功都很近!
以下是总结出来的字节经典面试题目,包含:计算机网络,Kotlin,数据结构与算法,Framework源码,微信小程序,NDK音视频开发,计算机网络等。
字节高级Android经典面试题和答案
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
经典面试题和答案**
[外链图片转存中…(img-QSXnBXVJ-1712821139452)]
[外链图片转存中…(img-Vo96MouL-1712821139452)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-yA44Yywv-1712821139453)]