-
将回复另存为草稿:当用户无意中关闭一个短信通知时,您的应用可以检索系统发送的
EXTRA_REMOTE_INPUT_DRAFT。 您可以使用此 extra 预填充应用中的文本字段,以便用户可以完成他们的回复。 -
确定对话是否为群组对话。您可以使用
setGroupConversation()以明确确定对话是否为群组对话。 -
为 Intent 设置语义操作:
setSemanticAction()函数允许您为操作提供语义含义,如“标记为已读”、“删除”和“回复”等。 -
SmartReply:Android 9 支持在您的短信应用中提供相同的建议回复。 使用
RemoteInput.setChoices()为用户提供一组标准回复。
Android 9 引入了多个通知增强功能,可供以 API 级别 28 及以上版本作为目标平台的开发者使用。
提升短信体验
从 Android 7.0(API 级别 24)开始,您可以添加一个操作以回复短信或直接从通知中输入其他文本。 Android 9 通过下列增强提升了该功能:
-
简化了针对对话参与者的支持:
Person类可用于识别参与对话的人员,包括他们的头像和 URI。 现在,许多其他 API(如addMessage())均可利用 [Person] 类而不是CharSequence。Person类也支持构建器设计模式。 -
支持图像:现在,Android 9 可在手机的“短信通知”中显示图像。 您可以使用对短信使用
setData()来显示图像。 以下代码段演示了如何创建Person和包含图像的短信。 -
-
// Create new Person. -
Person sender = new Person() -
.setName(name) -
.setUri(uri) -
.setIcon(null) -
.build(); -
// Create image message. -
Message message = new Message("Picture", time, sender) -
.setData("image/", imageUri); -
Notification.MessagingStyle style = new Notification.MessagingStyle(getUser()) -
.addMessage("Check this out!", 0, sender) -
.addMessage(message);
-
-
将回复另存为草稿:当用户无意中关闭一个短信通知时,您的应用可以检索系统发送的
EXTRA_REMOTE_INPUT_DRAFT。 您可以使用此 extra 预填充应用中的文本字段,以便用户可以完成他们的回复。 -
确定对话是否为群组对话。您可以使用
setGroupConversation()以明确确定对话是否为群组对话。 -
为 Intent 设置语义操作:
setSemanticAction()函数允许您为操作提供语义含义,如“标记为已读”、“删除”和“回复”等。 -
SmartReply:Android 9 支持在您的短信应用中提供相同的建议回复。 使用
RemoteInput.setChoices()为用户提供一组标准回复。
附带了照片的 MessagingStyle
标题含回复和对话的 MessagingStyle
渠道设置、广播和请勿打扰
Android 8.0 引入了通知渠道,允许您为要显示的每种通知类型创建可由用户自定义的渠道。 Android 9 通过下列变更简化通知渠道设置:
-
屏蔽渠道组:现在,用户可以针对某个应用在通知设置中屏蔽整个渠道组。 您可以使用
isBlocked()函数确定何时屏蔽一个渠道组,从而不会向该组中的渠道发送任何通知。此外,您的应用可以使用全新的
getNotificationChannelGroup()函数查询当前渠道组设置。 -
全新的广播 Intent 类型:现在,当通知渠道和渠道组的屏蔽状态发生变更时,Android 系统将发送广播 Intent。 拥有已屏蔽的渠道或渠道组的应用可以侦听这些 Intent 并做出相应的回应。 有关这些 Intent 操作和 extra 的更多信息,请参阅
NotificationManager参考中更新的常量列表。 有关响应广播 Intent 的信息,请参阅广播。 -
NotificationManager.Policy有 3 种新的“请勿打扰”优先级类别:-
PRIORITY_CATEGORY_ALARMS优先处理警报。 -
PRIORITY_CATEGORY_MEDIA优先处理媒体源的声音,如媒体和语音导航。 -
PRIORITY_CATEGORY_SYSTEM优先处理系统声音。
-
-
NotificationManager.Policy还有 7 种新的“请勿打扰”常量,可以用来抑制视觉中断:-
SUPPRESSED_EFFECT_FULL_SCREEN_INTENT防止通知启动全屏 Activity。 -
SUPPRESSED_EFFECT_LIGHTS屏蔽通知灯。 -
SUPPRESSED_EFFECT_PEEK防止通知短暂进入视图(“滑出”)。 -
SUPPRESSED_EFFECT_STATUS_BAR防止通知显示在支持状态栏的设备的状态栏中。 -
SUPPRESSED_EFFECT_BADGE在支持标志的设备上屏蔽标志。 如需了解详细信息,请参阅修改通知标志。 -
SUPPRESSED_EFFECT_AMBIENT在支持微光显示的设备上屏蔽通知。 -
SUPPRESSED_EFFECT_NOTIFICATION_LIST防止通知显示在支持列表视图(如通知栏或锁屏)的设备的列表视图中。
-