介绍Android 8.0 Oreo
原标题:Introducing Android 8.0 Oreo
链接:https://android-developers.googleblog.com/2017/08/introducing-android-8-oreo.html
作者:Dave Burke (工程副总裁)
翻译:arjinmc
经过一年多的开发和测试,开发者和早期采用者(谢谢!),我们现在准备正式推出Android 8.0 Oreo到世界各地。Android 8.0带来了许多伟大的功能,如图片,自动填充,集成即时应用程序,Google Play保护,更快的启动时间等等。
我们正在将资源推向Android开放源代码项目(AOSP),今天供大家访问。Pixel和Nexus 5X / 6P版本已经进入了运营商测试,我们预计在接下来的几个星期内,Pixel C和Nexus Player将分阶段推出。Android测试版用户将会收到今天的最终版本的更新,并且可以手动下载和刷镜像。在过去的几个月里,我们一直与合作伙伴密切合作,到今年年底,硬件厂商如Essential,华为,HTC,京瓷,LG,摩托罗拉,诺基亚手机的HMD全球之家,三星,夏普和索尼计划将新设备推出或升级到Android 8.0 Oreo。
什么是Android Oreo?
在Android 8.0 Oreo中,我们专注于创造流畅的体验,使Android更加强大,易于使用,如:
- 画中画可让用户在任意尺寸的屏幕上同时管理两项任务,而且应用程序可轻松支持。(如上图)
- 通知点扩展了通知的覆盖范围,并提供了一种新的方式来展现你的应用程序中的表面的Activity。点对大部分应用程序零点工作 - 我们甚至从图标中提取点的颜色。
- 自动填充框架简化了用户如何设置新设备并同步其密码。使用表单数据的应用程序可以优化其自动填充应用程序,密码管理器应用程序可以使用新的API将他们的服务提供给他们最喜欢的应用程序中的用户。作为Google Play服务更新的一部分,Autofill将在未来几周内全面展开。
我们还投入了一项专注于优化电池寿命,启动时间,图形渲染和稳定性的项目,同时为开发人员更好地了解应用程序的健康状况:
- 系统优化:我们跨系统工作,帮助应用程序运行得更快更流畅 - 例如,在运行时,我们添加了一个新的并发压缩垃圾回收,代码区域等。
- 后台限制:我们为后台运行的背景位置和Wi-Fi扫描以及更改方式添加了新的限制。这些边界可防止意外过度使用电池和内存,并适用于所有应用程序 - 确保你了解并在应用程序中对这些进行了说明。
- 互补的Android Vitals仪表板和IDE分析器:在Play应用商店控制台中,你现在可以查看有关应用程序的汇总数据,以帮助你精确定位常见问题 - 过多崩溃率,ANR速率,冻结帧,渲染缓慢,唤醒过多等。你还将在Android Studio 3.0中找到新的性能分析器,并在平台中找到新的仪器。
在Android 8.0中,你的应用可以直接在laucher中固定一个特定的应用快捷方式来驱动互动(左)。通知点让用户在你的应用程序中处于活动状态,并让他们直接跳转到应用程序的核心功能(右)。
对于开发人员,Android Oreo包含许多新功能,可帮助你构建更好,更高效的应用程序。这里仅仅是少数:
- 自动调整文本视图:使用自动调整TextView可以自动填充TextView文本,而不管数量。你可以创建预设文本大小的数组,或者以逐步的粒度设置最小和最大大小,并且文本将增长和缩小以填充可用的TextView空间。
- XML中的字体:字体现在是完全支持的资源类型。你现在可以在XML布局中使用字体,并以XML定义字体系列。
- 可下载的字体和表情符号:使用可下载的字体,你可以从共享提供程序加载字体,而不是将其包含在你的APK中。提供商和支持库管理字体的下载并在应用程序之间共享它们。相同的实现也支持可下载的表情符号,所以你可以获得更新的表情符号,而不限于内置于设备中的表情符号。
- 自适应图标:你现在可以根据设备制造商选择的遮罩创建系统以不同形状显示的自适应图标。该系统还可以动画化与图标的交互,并在launcher,快捷方式,设置,共享对话框和概述屏幕中使用它们。
自适应图标以不同的设备型号显示各种形状。
- 桌面快捷式:应用程序快捷键和主屏幕小部件非常适合吸引用户,现在你可以让用户从你的应用程序中添加并将快捷式和小部件插入launcher。还有一个新的选项来添加专门的活动来帮助用户创建快捷方式。该activity完成了自定义选项和确认。
- 应用程序的宽色域颜色:成像应用程序现在可以充分利用具有广域色彩显示的新设备。为了显示宽色域图像,应用程序在其清单文件(每个activty)中启用一个标志,并使用嵌入的宽色配置文件(AdobeRGB,Pro Photo RGB,DCI-P3等)加载位图。
- WebView增强功能:在Android Oreo中,我们默认启用了WebView多进程模式,并添加了一个API,让你的应用程序处理错误和崩溃。你还可以选择通过Google安全浏览验证网站的WebView对象。
- Java 8语言API和运行时优化: Android现在支持多种新的Java语言API,包括新的java.time API。此外,Android Runtime比以往任何时候都更快,在某些应用程序基准上可以提高到两倍。
通过访问developer.android.com上的Android 8.0 Oreo网站了解有关这些和其他新功能的更多信息。还请查看Android Oreo的新功能?了解开发者的新功能的视频。
确保你的应用程序已准备就绪
如果还没有准备好,今天要花一点时间测试你的应用程序,并确保他们提供你要升级到Android Oreo的用户所需的体验。
只需将你当前的应用从Google Play安装运行到Android Oreo的设备或模拟器上,并测试用户流。应用程序应该运行和看起来不错,并且正确处理Android Oreo 行为的变化。特别要注意后台位置限制,通知通道以及网络, 安全性和标识符的变化。
一旦解决了任何问题你就可以在alpha,beta或者产品渠道上发布应用程式更新到Google Play,以便用户开始接收Android 8.0 Oreo。
使用Android Studio加快开发速度
当你准备在Android Oreo中使用新的API构建时,我们建议你更新到最新版本的Android Studio 3.0,可从beta版渠道下载。除了改进的应用程序性能分析工具,支持Kotlin编程语言和Gradle构建优化之外,Android Studio 3.0还可以使用免安装应用程序,XML字体,可下载字体和自适应图标进行开发。
Android Studio 3.0包括使用Android Oreo功能开发的工具,例如在你的应用程序中预览XML字体资源。
我们还建议你更新到现在可从Google的Maven库获得的Android支持库26.0.2以及SDK Manager中提供的最新的SDK,工具和模拟器的系统映像。
如果你刚刚开始构建Android Oreo,请先阅读移植指南。它可以概述你需要做的过程和配置更改。
要针对官方的Android 8.0 API进行编译,请将你的项目更新compileSdkVersion为API 26.我们还建议你将应用程序更新targetSdkVersion为API 26,以使用Android Oreo特定的行为更改来选择并测试你的应用。有关如何使用Android Oreo构建环境的详细信息,请参阅移植指南。
发布你的更新到Google Play
Google Play适用于针对或针对API 26编写的应用程序。准备好后,你可以在Alpha,Beta或生产渠道中发布APK更新。
确保你的更新的应用程序在Android Oreo以及旧版本上运行良好。我们建议你使用Google Play的beta测试功能,从一小群用户那里获得早期反馈,然后进行分阶段推出。我们期待看到你的应用更新!
Android Oreo的下一步是什么?
我们即将关闭“开发者预览”问题追踪,但请保留反馈!你可以在AOSP问题跟踪器中针对Android 8.0 提出新问题。
再次感谢参与Android O开发者预览和公开测试版的许多开发人员和早期采用者。你们给了我们很好的反馈,并提交了数百个问题,帮助我们使Android Oreo平台成为消费者和开发人员的最佳实践。