Android N 最初预览版:开发者 API 和工具

645 查看

我们今天很高兴地宣布 Android N 开发者预览版发布!今年的做法有些不同,我们更早地发布了预览版…确实很早。通过发布一个“进行中”的早期开发版,我们有更多时间吸收开发者的反馈。同时,早期预览版也能让我们在今年夏天的时候将 Android N 最终版交给设备制造商,这样他们能比以往更早地获得最新的 Android 版本。在你的应用为 Android N 做好准备时,我们期望获得你的反馈。

n-preivew1下面是我们想要重点介绍的 API 和新特性,它们是今天发布的 Android N 开发者预览版的一部分,随着我们持续地开发还会有更多特性发布:

多窗口:从 Android  N 起将支持一个新的 manifest 属性 android:resizableActivity 。如果这个属性设置为 true ,那么在手机和平板上这个 activity 可以在分屏模式中启动。你也可以指定 activity 的最小可接受尺寸,以防用户把 activity 窗口调到小于这个尺寸。多窗口的生命周期变化类似于横竖屏模式之间的切换:activity 可以处理自身配置的改变,也可以让系统停止它并使用新的尺寸重建 activity 。另外,activity 也可以在 TV 这样的设备上进入画中画模式。对视频播放应用这是非常棒的特性,要使用这个特性请将 android:supportsPictureInPicture 设置为 true 。

n-preivew2

可直接回复的通知:RemoteInput 通知 API 最初是为 Android Wear 添加的,现在在 Android N 中也支持手机和平板了。使用 RemoteInput API 可以让用户快速、方便地回复收到的消息通知,而无需离开通知列表。更多信息见这里

打包的通知:在 Android N 中,你可以使用 Notification.Builder.setGroup() 方法将来自同一个应用的多个通知打包到一组,如消息应用中的多个独立消息。打包的通知可以通过使用双指手势或点击新的展开按钮展开为独立的消息。更多信息见这里

效率:在 Marshmallow 中当设备处于静止状态时系统会进入 Doze 模式以节省电量。在 Android N 中,每当屏幕关闭时 Doze 会进一步节省电量。如果你的应用已经适配了 Doze 模式,例如为紧急的通知使用 GCM 高优先级消息,那么这对你没有影响;如果还没适配,这里是上手指南。我们也在继续投资 Project Svelte,一个为减少 Android 内存需求的项目,以便 Android 可以在更广泛的设备上运行。在 Android N 中会使后台工作更加高效。如果你已经使用 JobScheduler 执行后台任务,那么你已经在正确的轨道上了。如果还没使用,那么 Android N 是完成这种切换的好时机。为了帮你,我们在让 JobScheduler 更有能力,所以现在你可以用 JobScheduler 来响应类似于 content provider 上的变化。

改进的 Java 8 支持:我们非常兴奋地将 Java 8 语言特性带到 Android 上。使用 Android 的 Jack 编译器,现在你可以使用许多流行的 Java 8 语言特性,包括 lambda 等,并且向前可以支持到 Android Gingerbread 上使用。新的特性帮助减少样板代码。例如,在需要提供事件监听器的地方可以使用 lambda 代替匿名内部类。一些 Java 8 语言特性,如默认方法和静态方法、stream、函数式接口,现在都可以在 Android N 及以上版本中使用。使用 Jack 编译器,我们期望在保持向前兼容的同时更紧地跟上 Java 语言。

上手指南

Android N 开发者预览版包括更新的 SDK 以及用于在官方 Android 模拟器和硬件设备上测试的系统镜像,镜像支持包括 Nexus 6, Nexus 5X, Nexus 6P, Nexus Player, Nexus 9 和 Pixel C 设备(为了帮助在平板上测试这些特性,开发者可以获得 Pixel C 的150美元折扣)。

这个最初的开发者预览版只是面向开发者的,而不是日常使用或给消费者使用的。我们打算在开发者预览版计划中经常更新预览版的系统映像。当我们接近最终版时,我们也将邀请消费者试用。

通过新的 Android Beta 计划,我们也将让你更容易地在你的开发设备上试用 Android N 。从今天稍晚开始,你将能够更新你的 Android 设备到 Android N 开发者预览版,并通过 OTA 获得后续更新。

点击这里获得上手 Android N 预览版的更多信息,让我们知道你的想法。我们越早收到你的反馈,我们就可以整合进更多你的建议。