说明
使用 chrome.gcm
可让应用和扩展程序通过 Firebase Cloud Messaging (FCM) 发送和接收消息。
权限
gcm
属性
MAX_MESSAGE_SIZE
消息中所有键值对的大小上限(以字节为单位)。
值
4096
方法
register()
chrome.gcm.register(
senderIds: string[],
callback?: function,
)
向 FCM 注册该应用。callback
将返回注册 ID。如果使用同一 senderIds
列表再次调用 register
,则会返回相同的注册 ID。
参数
-
senderIds
字符串[]
允许向应用发送消息的服务器 ID 列表。其中应包含至少 1 个发送者 ID,但不得超过 100 个。
-
callback
函数(可选)
callback
参数如下所示:(registrationId: string) => void
-
registrationId
字符串
FCM 为应用分配的注册 ID。
-
返回
-
承诺<字符串>
Chrome 116 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
send()
chrome.gcm.send(
message: object,
callback?: function,
)
根据消息内容发送消息。
参数
-
消息
对象
要通过 FCM 发送给另一方的消息。
-
数据
对象
要发送到服务器的消息数据。不允许将不区分大小写的
goog.
和google
以及区分大小写的collapse_key
用作键前缀。所有键值对的总和不应超过gcm.MAX_MESSAGE_SIZE
。 -
destinationId
字符串
Google API 控制台指定的消息接收服务器 ID。
-
messageId
字符串
消息的 ID。应用范围内的每条消息都必须是唯一的。有关选择和处理 ID 的建议,请参阅云消息传递文档。
-
timeToLive
编号(选填)
消息的存留时间(以秒为单位)。如果不能在这段时间内发送消息,则会引发 onSendError 事件。存留时间 (0) 表示应立即发送消息,否则将失败。存留时间的默认值为 86400 秒(1 天),最大值为 2419200 秒(28 天)。
-
-
callback
函数(可选)
callback
参数如下所示:(messageId: string) => void
-
messageId
字符串
发出回调的消息的 ID。
-
返回
-
承诺<字符串>
Chrome 116 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
unregister()
chrome.gcm.unregister(
callback?: function,
)
从 FCM 中取消注册该应用。
参数
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
承诺<void>
Chrome 116 及更高版本只有 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
事件
onMessage
chrome.gcm.onMessage.addListener(
callback: function,
)
通过 FCM 收到消息时触发。
参数
-
callback
函数
callback
参数如下所示:(message: object) => void
-
消息
对象
-
collapseKey
字符串(可选)
消息的折叠键。如需了解详情,请参阅不可折叠和可折叠消息。
-
数据
对象
消息数据。
-
来自
字符串(可选)
发送消息的发送者。
-
-
onMessagesDeleted
chrome.gcm.onMessagesDeleted.addListener(
callback: function,
)
在 FCM 服务器必须删除应用服务器发送至应用的消息时触发。如需详细了解如何处理此事件,请参阅消息的生命周期。
参数
-
callback
函数
callback
参数如下所示:() => void
onSendError
chrome.gcm.onSendError.addListener(
callback: function,
)
在无法向 FCM 服务器发送消息时触发。
参数
-
callback
函数
callback
参数如下所示:(error: object) => void
-
错误
对象
-
详细信息
对象
与错误相关的其他详细信息(如果有)。
-
错误消息
字符串
用于描述问题的错误消息。
-
messageId
字符串(可选)
包含此错误的消息的 ID(如果错误与特定消息相关)。
-
-