通过以下代码示例,了解 Android 8.0(API 级别 26)功能和 API。如需在 Android Studio 中下载示例,请依次选择 File > New > Import Samples 菜单选项。
注意:这些可下载的项目旨在与 Gradle 和 Android Studio 配合使用。
自动填充框架
AutofillFramework 示例 - 此示例演示了如何使用 Android 8.0(API 级别 26)中引入的自动填充框架。其中包括希望自动填充的客户端 Activity 的实现,以及可为这些 Activity 提供自动填充数据的 Service。
画中画模式
PictureInPicture 示例 - 此示例演示了“画中画”模式在手持设备上的基本用法。此示例会播放一段视频。应用进入“画中画”模式后,视频会继续播放。在画中画屏幕上,应用会显示一个操作项,用于暂停或继续播放视频。
可下载字体
DownloadableFonts - 此示例演示了如何使用 Android 8.0(API 级别 26)中引入的“可下载字体”功能。借助可下载字体,应用可以向提供程序请求特定字体,而无需捆绑或自行下载相应字体。这意味着,不再需要将字体单独捆绑为资源。
EmojiCompat - 此示例演示了如何使用表情符号兼容性支持库。您可以使用此库来防止应用将缺少的表情符号显示为豆腐块 (NBS)。您可以使用捆绑的表情符号字体或可下载的表情符号字体。此示例展示了这两种用法。
后台执行限制
蓝牙通告示例 - 更新了蓝牙通告示例,以符合 Android 8.0(API 级别 26)的后台执行限制。该示例之前创建了一个后台服务,用于广播蓝牙 LE 通告;此过程现在作为前台服务启动,以确保能够执行。
在 GitHub 中获取: Java
后台位置限制
LocationUpdatesPendingIntent 示例 - 此示例展示了如何使用 PendingIntent
请求位置信息更新。对于以 Android 7.x(API 级别 24-25)为目标平台但在 Android 8.0(API 级别 26)上运行的应用,开发者可以使用 PendingIntent.getService()
或 PendingIntent.getBroadcast()
。对于以 Android 8.0 为目标平台的应用,由于对在后台启动的服务施加了限制,因此 PendingIntent.getService()
无法正常运行。以 Android 8.0 为目标平台时,开发者应使用 PendingIntent.getBroadcast()
。
在 GitHub 中获取: Java
LocationUpdatesForegroundService 示例 - 此示例展示了如何在应用 activity 不可见时使用前台服务获取位置信息更新。对于在 Android 8.0(API 级别 26)上运行的应用,后台更新每小时仅进行几次。使用前台服务可以接收更频繁的更新。
在 GitHub 中获取: Java