public static final class Notification.WearableExtender
extends Object
implements Notification.Extender
java.lang.Object | |
↳ | android.app.Notification.WearableExtender |
助手类为通知添加可穿戴扩展。
有关如何使用此课程的更多信息,请参阅 Creating Notifications for Android Wear 。
使用可穿戴扩展程序创建通知:
Notification.Builder
, setting any desired properties. Notification.WearableExtender
. add
and set
methods of Notification.WearableExtender
. extend(Notification.Extender)
to apply the extensions to a notification. NotificationManager.notify(...)
methods. Notification notif = new Notification.Builder(mContext) .setContentTitle("New mail from " + sender.toString()) .setContentText(subject) .setSmallIcon(R.drawable.new_mail) .extend(new Notification.WearableExtender() .setContentIcon(R.drawable.new_mail)) .build(); NotificationManager notificationManger = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); notificationManger.notify(0, notif);
通过使用 WearableExtender(Notification)
构造函数,然后使用 get
方法访问值,可以在现有通知上访问可穿戴扩展。
Notification.WearableExtender wearableExtender = new Notification.WearableExtender( notification); List<Notification> pages = wearableExtender.getPages();
Constants |
|
---|---|
int |
SCREEN_TIMEOUT_LONG 当屏幕上显示此通知时,与 |
int |
SCREEN_TIMEOUT_SHORT 在屏幕上显示此通知时,与 |
int |
SIZE_DEFAULT 大小值用于 |
int |
SIZE_FULL_SCREEN 用于 |
int |
SIZE_LARGE 用于与 |
int |
SIZE_MEDIUM 用于与 |
int |
SIZE_SMALL 用于与 |
int |
SIZE_XSMALL 与 |
int |
UNSET_ACTION_INDEX 未设置操作索引的Sentinel值。 |
Public constructors |
|
---|---|
Notification.WearableExtender() 使用默认选项创建一个 |
|
Notification.WearableExtender(Notification notif) |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.app.Notification.Extender
|
int SCREEN_TIMEOUT_LONG
当屏幕上显示此通知时,与 setHintScreenTimeout(int)
一起使用的Sentinel值可使屏幕保持较长的时间。
常量值:-1(0xffffffff)
int SCREEN_TIMEOUT_SHORT
当屏幕上显示此通知时,与setHintScreenTimeout(int)
一起使用的Sentinel值可在setHintScreenTimeout(int)
保持屏幕setHintScreenTimeout(int)
。 这是默认值。
常量值:0(0x00000000)
int SIZE_DEFAULT
用于与 setCustomSizePreset(int)
一起使用的大小值,以默认大小显示此通知。
对于使用setDisplayIntent(PendingIntent)
创建的自定义显示通知,默认值为SIZE_MEDIUM
。 所有其他通知都会根据其内容自动调整大小。
常量值:0(0x00000000)
int SIZE_FULL_SCREEN
用于 setCustomSizePreset(int)
大小值用于 setCustomSizePreset(int)
显示此通知。
该值仅适用于使用 setDisplayIntent(PendingIntent)
创建的自定义显示通知。
常量值:5(0x00000005)
int SIZE_LARGE
用于与 setCustomSizePreset(int)
一起使用的大小值, setCustomSizePreset(int)
以较大的尺寸显示此通知。
该值仅适用于使用 setDisplayIntent(PendingIntent)
创建的自定义显示通知。
常量值:4(0x00000004)
int SIZE_MEDIUM
用于与 setCustomSizePreset(int)
一起使用的大小值,以用中等大小显示此通知。
该值仅适用于使用 setDisplayIntent(PendingIntent)
创建的自定义显示通知。
常量值:3(0x00000003)
int SIZE_SMALL
用于与 setCustomSizePreset(int)
一起使用的尺寸值,以小尺寸显示此通知。
该值仅适用于使用 setDisplayIntent(PendingIntent)
创建的自定义显示通知。
常量值:2(0x00000002)
int SIZE_XSMALL
与 setCustomSizePreset(int)
一起使用的尺寸值,用于以较小的尺寸显示此通知。
该值仅适用于使用 setDisplayIntent(PendingIntent)
创建的自定义显示通知。
常数值:1(0x00000001)
int UNSET_ACTION_INDEX
未设置操作索引的Sentinel值。
常量值:-1(0xffffffff)
Notification.WearableExtender ()
使用默认选项创建一个 Notification.WearableExtender
。
Notification.WearableExtender (Notification notif)
Parameters | |
---|---|
notif |
Notification
|
Notification.WearableExtender addAction (Notification.Action action)
为此通知添加可穿戴式操作。
使用此方法添加可穿戴式操作时,可穿戴式设备上显示的一组操作会从仅显示使用addAction(Notification.Action)
添加的操作的设备分开。 这允许定制哪些动作在不同设备上显示。
Parameters | |
---|---|
action |
Notification.Action : the action to add to this notification |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
也可以看看:
Notification.WearableExtender addActions (List<Notification.Action> actions)
将可穿戴式操作添加到此通知中。
使用此方法添加可穿戴式操作时,可穿戴式设备上显示的一组操作会从仅显示使用addAction(Notification.Action)
添加的操作的设备中分割出来。 这允许定制哪些动作在不同设备上显示。
Parameters | |
---|---|
actions |
List : the actions to add to this notification |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
也可以看看:
Notification.WearableExtender addPage (Notification page)
添加额外的内容页面以显示此通知。 当前通知形成第一页,使用此功能添加的页面形成后续页面。 该字段可用于将通知分成多个部分。
Parameters | |
---|---|
page |
Notification : the notification to add as another page |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
也可以看看:
Notification.WearableExtender addPages (List<Notification> pages)
使用此通知添加额外的内容页面以显示。 当前通知形成第一页,使用此功能添加的页面形成后续页面。 该字段可用于将通知分成多个部分。
Parameters | |
---|---|
pages |
List : a list of notifications |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
也可以看看:
Notification.WearableExtender clearActions ()
清除该建造者的所有可穿戴行为。
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining. |
Notification.WearableExtender clearPages ()
清除此构建器上的所有其他页面。
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining. |
也可以看看:
Notification.WearableExtender clone ()
创建并返回此对象的副本。 “复制”的确切含义可能取决于对象的类别。 一般意图是,对于任何对象x
,表达式:
will be true, and that the expression:x.clone() != x
will bex.clone().getClass() == x.getClass()
true
, but these are not absolute requirements. While it is typically the case that:
will bex.clone().equals(x)
true
, this is not an absolute requirement.
按照惯例,返回的对象应该通过调用super.clone
获得。 如果一个类和它的所有超类( Object
除外)都遵守这个约定,那么情况就是x.clone().getClass() == x.getClass()
。
按照惯例,这个方法返回的对象应该独立于这个对象(被克隆)。 为了实现这种独立性,可能需要在返回super.clone
之前修改返回的对象的一个或多个字段。 通常,这意味着复制包含被克隆对象的内部“深层结构”的任何可变对象,并将这些对象的引用替换为对这些副本的引用。 如果一个类只包含原始字段或对不可变对象的引用,那么通常情况下不需要修改由super.clone
返回的对象中的字段。
类Object
的方法clone
执行特定的克隆操作。 首先,如果该对象的类没有实现接口Cloneable
,则引发CloneNotSupportedException
。 请注意,所有数组都被视为实现接口Cloneable
并且数组类型T[]
的clone
方法的返回类型为T[]
,其中T是任何引用或基本类型。 否则,此方法创建该对象的类的新实例,并使用该对象的相应字段的内容来初始化其所有字段,就像通过赋值一样; 这些字段的内容本身并不克隆。 因此,此方法执行此对象的“浅拷贝”,而不是“深拷贝”操作。
类 Object
本身并不实现接口 Cloneable
,所以在类 Object
的对象上调用 clone
方法将导致在运行时抛出异常。
Returns | |
---|---|
Notification.WearableExtender |
a clone of this instance. |
Notification.Builder extend (Notification.Builder builder)
将可穿戴扩展应用于正在构建的通知。 这通常由extend(Notification.Extender)
方法Notification.Builder
。
Parameters | |
---|---|
builder |
Notification.Builder : the builder to be modified. |
Returns | |
---|---|
Notification.Builder |
the build object for chaining. |
List<Notification.Action> getActions ()
获取此通知中呈现的可穿戴式操作。
Returns | |
---|---|
List<Notification.Action> |
Bitmap getBackground ()
获取通知内容后面显示的背景图片。 与Notification.BigPictureStyle
相反,此背景将适用于任何通知样式。
Returns | |
---|---|
Bitmap |
the background image |
也可以看看:
int getContentAction ()
获取通知操作的索引(如果有),指定为可通过此通知的内容进行点击。 此操作将不再与通知内容分开显示。
对于包含多个页面的通知,子页面也可以设置内容操作,但可用操作的列表来自主通知,而不是来自子页面的通知。
如果可穿戴专用操作已添加到主要通知中,则此索引将应用于该列表,否则将应用于常规操作列表。
Returns | |
---|---|
int |
the action index or UNSET_ACTION_INDEX if no action was selected. |
int getContentIconGravity ()
获取内容图标在通知显示中应具有的引力。 支持的值包括START
和END
。 默认值是END
。
Returns | |
---|---|
int |
也可以看看:
boolean getContentIntentAvailableOffline ()
当可穿戴设备未连接到配套设备时,获取内容意图是否可用。 当可穿戴设备离线时,用户仍然可以触发该意图,但是视觉提示将指示内容意图可能不可用。 默认为true。
Returns | |
---|---|
boolean |
int getCustomContentHeight ()
获取用于显示此通知内容的自定义高度(以像素为单位)。
此选项仅适用于使用setDisplayIntent(PendingIntent)
创建的自定义显示通知。 另见setCustomSizePreset(int)
和setCustomContentHeight(int)
。
Returns | |
---|---|
int |
int getCustomSizePreset ()
从 Notification.WearableExtender
找到的可用预设中获取显示此通知的自定义大小预设,例如 SIZE_LARGE
。
一些自定义大小预设仅适用于使用setDisplayIntent(PendingIntent)
创建的自定义显示通知。 查看相关预置的文档。 另见setCustomContentHeight(int)
和setCustomSizePreset(int)
。
Returns | |
---|---|
int |
String getDismissalId ()
返回通知的解雇ID。
Returns | |
---|---|
String |
the dismissal id of the notification or null if it has not been set. |
PendingIntent getDisplayIntent ()
在显示此通知时获取在活动视图内启动的意图。 这PendingIntent
应该是一个活动。
Returns | |
---|---|
PendingIntent |
int getGravity ()
获取此通知在可用视口空间中应具有的重要性。 支持的值包括TOP
, CENTER_VERTICAL
和BOTTOM
。 默认值是BOTTOM
。
Returns | |
---|---|
int |
boolean getHintAmbientBigPicture ()
Notification.BigPictureStyle
此通知的 Notification.BigPictureStyle
(如果存在)应该转换为低位并以环境模式显示的提示,对条形码和二维码以及其他简单的黑白票据尤其有用。
Returns | |
---|---|
boolean |
true if it should be displayed in ambient, false otherwise otherwise. The default value is false if this was never set. |
boolean getHintAvoidBackgroundClipping ()
得到一个暗示,如果可能的话,这个通知的背景不应该被剪裁,而应该调整大小以便在屏幕上完全显示,保持图像的纵横比。 这可用于条形码或qr码等图像。
Returns | |
---|---|
boolean |
true if it's ok if the background is clipped on the screen, false otherwise. The default value is false if this was never set. |
boolean getHintContentIntentLaunchesActivity ()
Activity
此通知的内容意图将直接启动 Activity
,告诉平台它可以生成适当的转换
Returns | |
---|---|
boolean |
true if the content intent will launch an activity and transitions should be generated, false otherwise. The default value is false if this was never set. |
boolean getHintHideIcon ()
获取此通知图标不应显示的提示。
Returns | |
---|---|
boolean |
true if this icon should not be displayed, false otherwise. The default value is false if this was never set. |
int getHintScreenTimeout ()
获取以毫秒为单位显示此通知时屏幕应保持开启的持续时间。
Returns | |
---|---|
int |
the duration in milliseconds if > 0, or either one of the sentinel values SCREEN_TIMEOUT_SHORT or SCREEN_TIMEOUT_LONG . |
boolean getHintShowBackgroundOnly ()
获取仅显示此通知的背景图像的视觉提示,并且应隐藏其他语义内容。 此提示仅适用于使用addPage(Notification)
添加的子页面。
Returns | |
---|---|
boolean |
List<Notification> getPages ()
获取用于显示此通知的附加内容页面数组。 当前通知形成第一页,并且此数组内的元素形成后续页面。 该字段可用于将通知分成多个部分。
Returns | |
---|---|
List<Notification> |
the pages for this notification |
boolean getStartScrollBottom ()
获取此通知内容的滚动位置是否应从内容底部开始,而不是从顶部开始,以防内容太长而无法在屏幕内显示。 默认值为false(开头在顶部滚动)。
Returns | |
---|---|
boolean |
Notification.WearableExtender setBackground (Bitmap background)
设置要显示在通知内容后面的背景图片。 与Notification.BigPictureStyle
相反,此背景将适用于任何通知样式。
Parameters | |
---|---|
background |
Bitmap : the background bitmap |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
也可以看看:
Notification.WearableExtender setContentAction (int actionIndex)
将此通知的操作中的操作设置为可通过此通知的内容进行点击。 此操作将不再与通知内容分开显示。
对于包含多个页面的通知,子页面也可以设置内容操作,但可用操作的列表来自主通知,而不是来自子页面的通知。
Parameters | |
---|---|
actionIndex |
int : The index of the action to hoist onto the current notification page. If wearable actions were added to the main notification, this index will apply to that list, otherwise it will apply to the regular actions list. |
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setContentIcon (int icon)
设置与此通知内容一致的图标。
Parameters | |
---|---|
icon |
int
|
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setContentIconGravity (int contentIconGravity)
设置内容图标在通知显示中应具有的重力。 支持的值包括START
和END
。 默认值是END
。
Parameters | |
---|---|
contentIconGravity |
int
|
Returns | |
---|---|
Notification.WearableExtender |
也可以看看:
Notification.WearableExtender setContentIntentAvailableOffline (boolean contentIntentAvailableOffline)
设置当可穿戴设备未连接到配套设备时,内容意图是否可用。 当可穿戴设备离线时,用户仍然可以触发该意图,但是视觉提示将指示内容意图可能不可用。 默认为true。
Parameters | |
---|---|
contentIntentAvailableOffline |
boolean
|
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setCustomContentHeight (int height)
为此通知内容的显示设置自定义高度(以像素为单位)。
此选项仅适用于使用setDisplayIntent(PendingIntent)
创建的自定义显示通知。 另请参阅setCustomSizePreset(int)
和getCustomContentHeight()
。
Parameters | |
---|---|
height |
int
|
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setCustomSizePreset (int sizePreset)
为在 Notification.WearableExtender
找到的可用预设 Notification.WearableExtender
(例如 SIZE_LARGE
的显示此通知显示设置自定义大小预设值。
某些自定义大小预设仅适用于使用setDisplayIntent(PendingIntent)
创建的自定义显示通知。 查看相关预置的文档。 另见setCustomContentHeight(int)
和getCustomSizePreset()
。
Parameters | |
---|---|
sizePreset |
int
|
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setDismissalId (String dismissalId)
当您发布通知时,如果您设置了解雇ID字段,那么当通知被取消时,其他可穿戴设备上的通知以及具有相同解雇ID的配对Android手机也将被取消。 请注意,只有在穿戴应用清单中将通知桥接模式设置为NO_BRIDGING时,此功能才有效。 有关如何使用桥接模式功能的更多信息,请参阅Adding Wearable Features to Notifications 。
Parameters | |
---|---|
dismissalId |
String : the dismissal id of the notification. |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
Notification.WearableExtender setDisplayIntent (PendingIntent intent)
显示此通知时,设置在活动视图内启动的意图。 提供的PendingIntent
应该用于一项活动。
Intent displayIntent = new Intent(context, MyDisplayActivity.class); PendingIntent displayPendingIntent = PendingIntent.getActivity(context, 0, displayIntent, PendingIntent.FLAG_UPDATE_CURRENT); Notification notif = new Notification.Builder(context) .extend(new Notification.WearableExtender() .setDisplayIntent(displayPendingIntent) .setCustomSizePreset(Notification.WearableExtender.SIZE_MEDIUM)) .build();
要启动的活动需要允许嵌入,必须导出,并且应具有空的任务关系。 还建议使用设备默认灯光主题。
示例AndroidManifest.xml条目:
<activity android:name="com.example.MyDisplayActivity" android:exported="true" android:allowEmbedded="true" android:taskAffinity="" android:theme="@android:style/Theme.DeviceDefault.Light" />
Parameters | |
---|---|
intent |
PendingIntent : the PendingIntent for an activity |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
也可以看看:
Notification.WearableExtender setGravity (int gravity)
设置此通知在可用视口空间中应具有的重力。 支持的值包括TOP
, CENTER_VERTICAL
和BOTTOM
。 默认值是BOTTOM
。
Parameters | |
---|---|
gravity |
int
|
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setHintAmbientBigPicture (boolean hintAmbientBigPicture)
设置一个提示,告知 Notification.BigPictureStyle
(如果存在)应该转换为低位并以环境模式显示,对条形码和二维码以及其他简单的黑白票据特别有用。
Parameters | |
---|---|
hintAmbientBigPicture |
boolean : true to enable converstion and ambient. |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
Notification.WearableExtender setHintAvoidBackgroundClipping (boolean hintAvoidBackgroundClipping)
设置提示:如果可能,不应剪裁此通知的背景,而应调整大小以在屏幕上完全显示,并保留图像的高宽比。 这可用于条形码或qr码等图像。
Parameters | |
---|---|
hintAvoidBackgroundClipping |
boolean : true to avoid clipping if possible. |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
Notification.WearableExtender setHintContentIntentLaunchesActivity (boolean hintContentIntentLaunchesActivity)
提示此通知的内容意图将直接启动 Activity
,告诉平台它可以生成适当的转换。
Parameters | |
---|---|
hintContentIntentLaunchesActivity |
boolean : true if the content intent will launch an activity and transitions should be generated, false otherwise. |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
Notification.WearableExtender setHintHideIcon (boolean hintHideIcon)
设置提示:不应显示此通知的图标。
Parameters | |
---|---|
hintHideIcon |
boolean : true to hide the icon, false otherwise. |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
Notification.WearableExtender setHintScreenTimeout (int timeout)
在屏幕上显示此通知时,至少在此持续时间内设置屏幕应保持打开状态的提示。
Parameters | |
---|---|
timeout |
int : The requested screen timeout in milliseconds. Can also be either SCREEN_TIMEOUT_SHORT or SCREEN_TIMEOUT_LONG . |
Returns | |
---|---|
Notification.WearableExtender |
this object for method chaining |
Notification.WearableExtender setHintShowBackgroundOnly (boolean hintShowBackgroundOnly)
设置一个视觉提示,只显示该通知的背景图像,并且应隐藏其他语义内容。 该提示仅适用于使用addPage(Notification)
添加的子页面。
Parameters | |
---|---|
hintShowBackgroundOnly |
boolean
|
Returns | |
---|---|
Notification.WearableExtender |
Notification.WearableExtender setStartScrollBottom (boolean startScrollBottom)
设置此通知内容的滚动位置是否应该从内容的底部开始,而不是从顶部开始,此时内容太长而无法在屏幕内显示。 默认值为false(开头在顶部滚动)。
Parameters | |
---|---|
startScrollBottom |
boolean
|
Returns | |
---|---|
Notification.WearableExtender |