无屏眼镜和带屏眼镜使用标准的 Android 通知框架,因此您可以使用相同的通知 API 在不同设备规格上通知用户。为了尽可能提高兼容性并最大限度地减少开发开销,请使用 Android NotificationCompat API。Android 会解析传入的通知,并根据设备的功能调整其呈现方式。
按照通知最佳实践操作,您现有的手机通知可以桥接到无屏眼镜和带屏眼镜,而无需进行额外的配置。请阅读以下部分中的信息,了解系统如何针对音频眼镜和显示眼镜调整通知。
系统如何确定是否要桥接通知
Android 会使用传入通知的 Notification.Style 以及其他几个条件来确定是否将通知桥接到用户的无屏眼镜或带屏眼镜。
带屏眼镜上支持的通知样式
带屏眼镜支持部分 Android Notification.Style 类。以下通知样式可在带屏眼镜上完全呈现:
其他通知样式(例如 InboxStyle)不会被完全解析和呈现。对于这些样式,系统不会呈现样式特定的字段(例如 InboxStyle 的摘要文本)。相反,系统会恢复为标准样式,并仅呈现通用字段,例如内容标题。
其他必需的桥接条件
除了通知的样式之外,通知还必须满足以下条件才能桥接到用户的无屏眼镜或带屏眼镜:
该通知不受以下任何会阻止其传递的用户控制设置的影响:
眼镜配套应用设置:
应用级切换开关:用户可以选择将哪些应用通知桥接到眼镜。当眼镜上的通知处于开启状态时,系统会默认关闭特定应用的通知,但“建议”列表中的应用除外。
借助此默认行为,用户可以在手机上为特定应用启用通知,但在眼镜上为该应用停用通知。为了帮助用户决定是否在眼镜应用中为您的应用启用通知,请说明通知将如何改善用户使用您应用的体验。
用户手机上的系统级通知设置:
应用级切换开关:如果用户在手机上完全停用某个应用的通知,则不会桥接该应用的任何通知。
通知渠道设置:如果用户停用应用定义的通知渠道的通知,则不会桥接该渠道的任何通知。
用户手机上的系统级“勿扰”(DND) 设置:AI 眼镜使用手机的“勿扰”设置。如果用户的手机处于“请勿打扰”模式,眼镜也会屏蔽通知。
通知会分配给具有
IMPORTANCE_HIGH或IMPORTANCE_MAX的渠道。通知的标题不是
null或为空。通知未标记为
FLAG_LOCAL_ONLY。如果设置了此标志,则通知仅限于主设备。除非通知符合实时动态通知的条件,否则它不是持续性通知,例如持久性后台任务。
如何将实时动态通知桥接到带屏眼镜
实时更新通知是一种专门的通知,旨在用于需要实时监控的持续性用户发起的活动,例如网约车预计到达时间、精细导航或通话中状态。与常规通知不同,实时更新会保持活跃状态,以提供持续的信息流,并在整个系统界面中突出显示。
对于带屏眼镜,实时更新主要在以下两个位置呈现:
- 主屏幕:实时动态通知会以卡片的形式显示在主画布上。如果多个实时更新处于有效状态,系统会改用堆栈。
- 系统栏:当用户在其他应用或体验中时,实时更新会以状态芯片的形式显示在系统栏中。每当状态发生变化时,这些功能块都会短暂显示。如果显示屏处于休眠状态,状态芯片会自动唤醒屏幕以指示状态变化,这样用户无需手动互动即可随时了解最新状态。
如果实时更新通知使用 AI 眼镜支持的通知样式,则会进行完全解析和呈现。使用其他通知样式(例如 BigTextStyle)的“实时动态”通知不会被完全解析,系统会将其调整为标准样式的通知。
带屏眼镜可用的通知操作
在带屏眼镜上,收到的通知会以浮动通知 (HUN) 的形式显示。对于 MessagingStyle 通知,您的应用可以使用直接回复操作。用户可以点按展开以查看更多详情并进行回复。对于所有其他通知样式,唯一可用的选项是系统提供的清除操作。
使用直接回复时,用户可以通过语音回复,也可以通过向前滚动从智能回复列表中选择回复。对于智能回复,您可以使用设备端 AI 来建议简短的相关回复。