9CaKrnJXeoX tech.huanqiu.comarticle支持系统级分屏:Android 7.0系统更新日志一览/e3pmh164r/e3pmh18ap今日凌晨,谷歌正式发布了Android 7.0正式版,首发推送了多款Nexus设备。除了一大堆常规的BUG修复之外,Android 7.0还自带分屏功能,让你充分感受大屏幕带来的实用性。下边便是Android 7.0在系统功能提升的官方更新日志:现在,用户可以一次在屏幕上打开两个应用。在运行 Android N 的手机和平板电脑上,用户可以并排运行两个应用,或者处于分屏模式时一个应用位于另一个应用之上。 用户可以通过拖动两个应用之间的分隔线来调整应用。在 Android TV 设备上,应用可以将自身置于画中画模式,从而让它们可以在用户浏览或与其他应用交互时继续显示内容。多窗口支持为您提供新的吸引用户方式,特别是在平板电脑和其他更大屏幕的设备上。 您甚至可以在您的应用中启用拖放,从而使用户可以方便地将内容拖放到您的应用或从其中拖出内容—这是一个非常好的增强用户体验的方式。向您的应用添加多窗口支持并配置多窗口显示的处理方式非常简单。 例如,您可以指定您的 Activity 允许的最小尺寸,从而防止用户将 Activity 调整到该尺寸以下。 您还可以为应用禁用多窗口显示,这可确保系统将仅以全屏模式显示应用。通知增强功能在 Android N 中,我们重新设计了通知,使其更易于使用并且速度更快。 部分变更包括:模板更新:我们正在更新通知模板,新强调了英雄形象和化身。 开发者将能够充分利用新模板,只需进行少量的代码调整。消息样式自定义:您可以自定义更多与您的使用 MessageStyle 类的通知相关的用户界面标签。 您可以配置消息、会话标题和内容视图。捆绑通知:系统可以将消息组合在一起(例如,按消息主题)并显示组。 用户可以适当地进行 Dismiss 或 Archive 等操作。 如果您已实现 Android Wear 的通知,那么您已经很熟悉此模型。直接回复:对于实时通信应用,Android 系统支持内联回复,以便用户可以直接在通知界面中快速回复短信。自定义视图:两个新的 API 让您在通知中使用自定义视图时可以充分利用系统装饰元素,如通知标题和操作。在 Android N 中,我们添加了 Just in Time (JIT) 编译器,对 ART 进行代码分析,让它可以在应用运行时持续提升 Android 应用的性能。 JIT 编译器对 Android 运行组件当前的 Ahead of Time (AOT) 编译器进行了补充,有助于提升运行时性能,节省存储空间,加快应用更新和系统更新速度。个人资料指导的编译让 Android 运行组件能够根据应用的实际使用以及设备上的情况管理每个应用的 AOT/JIT 编译。 例如,Android 运行组件维护每个应用的热方法的个人资料,并且可以预编译和缓存这些方法以实现最佳性能。 对于应用的其他部分,在实际使用之前不会进行编译。除提升应用的关键部分的性能外,个人资料指导的编译还有助于减少整个 RAM 占用,包括关联的二进制文件。 此功能对于低内存设备非常尤其重要。Android 运行组件在管理个人资料指导的编译时,可最大程度降低对设备电池的影响。 仅当设备处于空闲状态和充电时才进行编译,从而可以通过提前执行该工作节约时间和省电。快速的应用安装路径Android 运行组件的 JIT 编译器最实际的好处之一是应用安装和系统更新的速度。 即使在 Android 6.0 中需要几分钟进行优化和安装的大型应用,现在只需几秒钟就可以完成安装。 系统更新也变得更快,因为省去了优化步骤。随时随地低电耗模Android 6.0 推出了低电耗模式,即设备处于空闲状态时,通过推迟应用的 CPU 和网络活动以实现省电目的的系统模式,例如,设备放在桌上或抽屉里时。现在,在 Android N 中,低电耗模式又前进了一步,随时随地可以省电。只要屏幕关闭了一段时间,且设备未插入电源,低电耗模式就会对应用使用熟悉的 CPU 和网络限制。这意味着用户即使将设备放入口袋里也可以省电。低电耗模式现在应用限制以延长电池寿命,即使设备未处于静止状态。屏幕关闭片刻后,设备在使用电池时,低电耗模式将限制网络访问,同时延迟作业和同步。 在短暂的维护时间范围后,其允许应用访问网络,并执行延迟的作业/同步。 打开屏幕或将设备插入电源会使设备退出低电耗模式。当设备再次处于静止状态时,屏幕关闭且使用电池一段时间,低电耗模式针对 PowerManager.WakeLock、AlarmManager 警报和 GPS/Wi-Fi 扫描应用完整 CPU 和网络限制。无论设备是否处于运动状态,将应用调整到低电耗模式的最佳做法均相同,因此,如果您已更新应用以妥善处理低电耗模式,则一切就绪。 如果不是,请立即开始将应用调整到低电耗模式。Project Svelte:后台优化Project Svelte 在持续改善,以最大程度减少生态系统中一系列 Android 设备中系统和应用使用的 RAM。 在 Android N 中,Project Svelte 注重优化在后台中运行应用的方式。后台处理是大多数应用的一个重要部分。处理得当,可让您实现非常棒的用户体验 — 即时、快速和情境感知。如果处理不得当,后台处理会毫无必要地消耗 RAM(和电池),同时影响其他应用的系统性能。自 Android 5.0 发布以来,JobScheduler 已成为执行后台工作的首选方式,其工作方式有利于用户。 应用可以在安排作业的同时允许系统基于内存、电源和连接情况进行优化。 JobScheduler 可实现控制和简洁性,我们想要所有应用都使用它。另一个非常好的选择是 GCMNetworkManager(Google Play 服务的一部分),其在旧版 Android 中提供类似的作业安排和兼容性。我们在继续扩展 JobScheduler 和 GCMNetworkManager,以符合多个用例 — 例如,在 Android N 中,现在,您可以基于内容提供程序中的更改安排后台工作。 同时,我们开始弃用一些较旧的模式,这些模式会降低系统性能,特别是低内存设备的系统性能。在 Android N 中,我们删除了三个常用隐式广播 — CONNECTIVITY_ACTION、ACTION_NEW_PICTURE 和 ACTION_NEW_VIDEO — 因为这些广播可能会一次唤醒多个应用的后台进程,同时会耗尽内存和电池。 如果您的应用收到这些广播,请充分利用 N Developer Preview 以迁移到 JobScheduler 和相关的 API。Data Saver图 4.设置中的 Data Saver在移动设备的整个生命周期,蜂窝数据计划的成本通常会超出设备本身的成本。 对于许多用户而言,蜂窝数据是他们想要节省的昂贵资源。Android N 推出了 Data Saver 模式,这是一项新的系统服务,有助于减少应用使用的蜂窝数据,无论是在漫游,账单周期即将结束,还是使用少量的预付费数据包。 Data Saver 让用户可以控制应用使用蜂窝数据的方式,同时让开发者打开 Data Saver 时可以提供更多有效的服务。用户在Settings中启用 Data Saver 且设备位于按流量计费的网络上时,系统屏蔽后台流量消耗,同时指示应用在前台尽可能使用较少的流量 — 例如,通过限制用于流媒体服务的比特率、降低图片质量、延迟最佳的预缓冲等方法来实现。 用户可以将特定应用加入白名单以允许后台按流量的流量消耗,即使在打开 Data Saver 时也是如此。Android N 扩展了 ConnectivityManager,以便为应用检索用户的 Data Saver 首选项并监控首选项变更提供一种方式。 所有应用均应检查用户是否已启用 Data Saver 并努力限制前台和后台流量消耗。Vulkan APIAndroid N 将一项新的 3D 渲染 API Vulkan 集成到平台中。就像 OpenGL ES 一样,Vulkan 是 3D 图形和渲染的一项开放标准,由 Khronos Group 维护。Vulkan 是完全从零开始设计,以最小化驱动器中的 CPU 开销,并能让您的应用更直接地控制 GPU 操作。 Vulkan 还允许多个线程同时执行工作,如命令缓冲区构建,以获得更好的并行化。Vulkan 开发工具和库都已卷入 Android NDK。它们包括:头验证层(调试库)SPIR-V 着色程序编译器SPIR-V 运行时着色器编译库Vulkan 仅适用于已启用 Vulkan 硬件的设备上的应用,如 Nexus 5X、Nexus 6P 和 Nexus Player。 我们正在与合作伙伴密切合作,以尽快使 Vulkan 能面向更多的设备。Quick Settings Tile API“快速设置”通常用于直接从通知栏显示关键设置和操作,非常简单。 在 Android N 中,我们已扩展“快速设置”的范围,使其更加有用更方便。我们为额外的“快速设置”图块添加了更多空间,用户可以通过向左或向右滑动跨分页的显示区域访问它们。 我们还让用户可以控制显示哪些“快速设置”图块以及显示的位置 — 用户可以通过拖放图块来添加或移动图块。对于开发者,Android N 还添加了一个新的 API,从而让您可以定义自己的“快速设置”图块,使用户可以轻松访问您应用中的关键控件和操作。对于急需或频繁使用的控件和操作,保留“快速设置”图块,且不应将其用作启动应用的快捷方式。定义图块后,您可以将它们显示给用户,用户可通过拖放将图块添加到“快速设置”。号码屏蔽Android N 现在支持在平台中进行号码屏蔽,提供框架 API,让服务提供商可以维护屏蔽的号码列表。 默认短信应用、默认手机应用和提供商应用可以对屏蔽的号码列表进行读取和写入操作。 其他应用则无法访问此列表。通过使号码屏蔽成为平台的标准功能,Android 为应用提供一致的方式来支持广泛的设备上的号码屏蔽。 应用可以利用的其他优势包括:还会屏蔽已屏蔽的来电号码发出的短信通过 Backup & Restore(备份和还原)功能可以跨重置和设备保留屏蔽的号码多个应用可以使用相同的屏蔽号码列表此外,通过 Android 的运营商应用集成表示运营商可以读取设备上屏蔽的号码列表,并为用户执行服务端屏蔽,以阻止不需要的来电和短信通过任何介质(如 VOIP 端点或转接电话)到达用户。来电过滤Android N 允许默认的手机应用过滤来电。手机应用执行此操作的方式是实现新的 CallScreeningSer1471994880000责编:李文瑶安卓中国147199488000011[]//himg2.huanqiucdn.cn/attachment2010/2016/0824/20160824072809114.png{"email":"liwenyao@huanqiu.com","name":"李文瑶"}
今日凌晨,谷歌正式发布了Android 7.0正式版,首发推送了多款Nexus设备。除了一大堆常规的BUG修复之外,Android 7.0还自带分屏功能,让你充分感受大屏幕带来的实用性。下边便是Android 7.0在系统功能提升的官方更新日志:现在,用户可以一次在屏幕上打开两个应用。在运行 Android N 的手机和平板电脑上,用户可以并排运行两个应用,或者处于分屏模式时一个应用位于另一个应用之上。 用户可以通过拖动两个应用之间的分隔线来调整应用。在 Android TV 设备上,应用可以将自身置于画中画模式,从而让它们可以在用户浏览或与其他应用交互时继续显示内容。多窗口支持为您提供新的吸引用户方式,特别是在平板电脑和其他更大屏幕的设备上。 您甚至可以在您的应用中启用拖放,从而使用户可以方便地将内容拖放到您的应用或从其中拖出内容—这是一个非常好的增强用户体验的方式。向您的应用添加多窗口支持并配置多窗口显示的处理方式非常简单。 例如,您可以指定您的 Activity 允许的最小尺寸,从而防止用户将 Activity 调整到该尺寸以下。 您还可以为应用禁用多窗口显示,这可确保系统将仅以全屏模式显示应用。通知增强功能在 Android N 中,我们重新设计了通知,使其更易于使用并且速度更快。 部分变更包括:模板更新:我们正在更新通知模板,新强调了英雄形象和化身。 开发者将能够充分利用新模板,只需进行少量的代码调整。消息样式自定义:您可以自定义更多与您的使用 MessageStyle 类的通知相关的用户界面标签。 您可以配置消息、会话标题和内容视图。捆绑通知:系统可以将消息组合在一起(例如,按消息主题)并显示组。 用户可以适当地进行 Dismiss 或 Archive 等操作。 如果您已实现 Android Wear 的通知,那么您已经很熟悉此模型。直接回复:对于实时通信应用,Android 系统支持内联回复,以便用户可以直接在通知界面中快速回复短信。自定义视图:两个新的 API 让您在通知中使用自定义视图时可以充分利用系统装饰元素,如通知标题和操作。在 Android N 中,我们添加了 Just in Time (JIT) 编译器,对 ART 进行代码分析,让它可以在应用运行时持续提升 Android 应用的性能。 JIT 编译器对 Android 运行组件当前的 Ahead of Time (AOT) 编译器进行了补充,有助于提升运行时性能,节省存储空间,加快应用更新和系统更新速度。个人资料指导的编译让 Android 运行组件能够根据应用的实际使用以及设备上的情况管理每个应用的 AOT/JIT 编译。 例如,Android 运行组件维护每个应用的热方法的个人资料,并且可以预编译和缓存这些方法以实现最佳性能。 对于应用的其他部分,在实际使用之前不会进行编译。除提升应用的关键部分的性能外,个人资料指导的编译还有助于减少整个 RAM 占用,包括关联的二进制文件。 此功能对于低内存设备非常尤其重要。Android 运行组件在管理个人资料指导的编译时,可最大程度降低对设备电池的影响。 仅当设备处于空闲状态和充电时才进行编译,从而可以通过提前执行该工作节约时间和省电。快速的应用安装路径Android 运行组件的 JIT 编译器最实际的好处之一是应用安装和系统更新的速度。 即使在 Android 6.0 中需要几分钟进行优化和安装的大型应用,现在只需几秒钟就可以完成安装。 系统更新也变得更快,因为省去了优化步骤。随时随地低电耗模Android 6.0 推出了低电耗模式,即设备处于空闲状态时,通过推迟应用的 CPU 和网络活动以实现省电目的的系统模式,例如,设备放在桌上或抽屉里时。现在,在 Android N 中,低电耗模式又前进了一步,随时随地可以省电。只要屏幕关闭了一段时间,且设备未插入电源,低电耗模式就会对应用使用熟悉的 CPU 和网络限制。这意味着用户即使将设备放入口袋里也可以省电。低电耗模式现在应用限制以延长电池寿命,即使设备未处于静止状态。屏幕关闭片刻后,设备在使用电池时,低电耗模式将限制网络访问,同时延迟作业和同步。 在短暂的维护时间范围后,其允许应用访问网络,并执行延迟的作业/同步。 打开屏幕或将设备插入电源会使设备退出低电耗模式。当设备再次处于静止状态时,屏幕关闭且使用电池一段时间,低电耗模式针对 PowerManager.WakeLock、AlarmManager 警报和 GPS/Wi-Fi 扫描应用完整 CPU 和网络限制。无论设备是否处于运动状态,将应用调整到低电耗模式的最佳做法均相同,因此,如果您已更新应用以妥善处理低电耗模式,则一切就绪。 如果不是,请立即开始将应用调整到低电耗模式。Project Svelte:后台优化Project Svelte 在持续改善,以最大程度减少生态系统中一系列 Android 设备中系统和应用使用的 RAM。 在 Android N 中,Project Svelte 注重优化在后台中运行应用的方式。后台处理是大多数应用的一个重要部分。处理得当,可让您实现非常棒的用户体验 — 即时、快速和情境感知。如果处理不得当,后台处理会毫无必要地消耗 RAM(和电池),同时影响其他应用的系统性能。自 Android 5.0 发布以来,JobScheduler 已成为执行后台工作的首选方式,其工作方式有利于用户。 应用可以在安排作业的同时允许系统基于内存、电源和连接情况进行优化。 JobScheduler 可实现控制和简洁性,我们想要所有应用都使用它。另一个非常好的选择是 GCMNetworkManager(Google Play 服务的一部分),其在旧版 Android 中提供类似的作业安排和兼容性。我们在继续扩展 JobScheduler 和 GCMNetworkManager,以符合多个用例 — 例如,在 Android N 中,现在,您可以基于内容提供程序中的更改安排后台工作。 同时,我们开始弃用一些较旧的模式,这些模式会降低系统性能,特别是低内存设备的系统性能。在 Android N 中,我们删除了三个常用隐式广播 — CONNECTIVITY_ACTION、ACTION_NEW_PICTURE 和 ACTION_NEW_VIDEO — 因为这些广播可能会一次唤醒多个应用的后台进程,同时会耗尽内存和电池。 如果您的应用收到这些广播,请充分利用 N Developer Preview 以迁移到 JobScheduler 和相关的 API。Data Saver图 4.设置中的 Data Saver在移动设备的整个生命周期,蜂窝数据计划的成本通常会超出设备本身的成本。 对于许多用户而言,蜂窝数据是他们想要节省的昂贵资源。Android N 推出了 Data Saver 模式,这是一项新的系统服务,有助于减少应用使用的蜂窝数据,无论是在漫游,账单周期即将结束,还是使用少量的预付费数据包。 Data Saver 让用户可以控制应用使用蜂窝数据的方式,同时让开发者打开 Data Saver 时可以提供更多有效的服务。用户在Settings中启用 Data Saver 且设备位于按流量计费的网络上时,系统屏蔽后台流量消耗,同时指示应用在前台尽可能使用较少的流量 — 例如,通过限制用于流媒体服务的比特率、降低图片质量、延迟最佳的预缓冲等方法来实现。 用户可以将特定应用加入白名单以允许后台按流量的流量消耗,即使在打开 Data Saver 时也是如此。Android N 扩展了 ConnectivityManager,以便为应用检索用户的 Data Saver 首选项并监控首选项变更提供一种方式。 所有应用均应检查用户是否已启用 Data Saver 并努力限制前台和后台流量消耗。Vulkan APIAndroid N 将一项新的 3D 渲染 API Vulkan 集成到平台中。就像 OpenGL ES 一样,Vulkan 是 3D 图形和渲染的一项开放标准,由 Khronos Group 维护。Vulkan 是完全从零开始设计,以最小化驱动器中的 CPU 开销,并能让您的应用更直接地控制 GPU 操作。 Vulkan 还允许多个线程同时执行工作,如命令缓冲区构建,以获得更好的并行化。Vulkan 开发工具和库都已卷入 Android NDK。它们包括:头验证层(调试库)SPIR-V 着色程序编译器SPIR-V 运行时着色器编译库Vulkan 仅适用于已启用 Vulkan 硬件的设备上的应用,如 Nexus 5X、Nexus 6P 和 Nexus Player。 我们正在与合作伙伴密切合作,以尽快使 Vulkan 能面向更多的设备。Quick Settings Tile API“快速设置”通常用于直接从通知栏显示关键设置和操作,非常简单。 在 Android N 中,我们已扩展“快速设置”的范围,使其更加有用更方便。我们为额外的“快速设置”图块添加了更多空间,用户可以通过向左或向右滑动跨分页的显示区域访问它们。 我们还让用户可以控制显示哪些“快速设置”图块以及显示的位置 — 用户可以通过拖放图块来添加或移动图块。对于开发者,Android N 还添加了一个新的 API,从而让您可以定义自己的“快速设置”图块,使用户可以轻松访问您应用中的关键控件和操作。对于急需或频繁使用的控件和操作,保留“快速设置”图块,且不应将其用作启动应用的快捷方式。定义图块后,您可以将它们显示给用户,用户可通过拖放将图块添加到“快速设置”。号码屏蔽Android N 现在支持在平台中进行号码屏蔽,提供框架 API,让服务提供商可以维护屏蔽的号码列表。 默认短信应用、默认手机应用和提供商应用可以对屏蔽的号码列表进行读取和写入操作。 其他应用则无法访问此列表。通过使号码屏蔽成为平台的标准功能,Android 为应用提供一致的方式来支持广泛的设备上的号码屏蔽。 应用可以利用的其他优势包括:还会屏蔽已屏蔽的来电号码发出的短信通过 Backup & Restore(备份和还原)功能可以跨重置和设备保留屏蔽的号码多个应用可以使用相同的屏蔽号码列表此外,通过 Android 的运营商应用集成表示运营商可以读取设备上屏蔽的号码列表,并为用户执行服务端屏蔽,以阻止不需要的来电和短信通过任何介质(如 VOIP 端点或转接电话)到达用户。来电过滤Android N 允许默认的手机应用过滤来电。手机应用执行此操作的方式是实现新的 CallScreeningSer