我正试图弄清楚如何使用聚合物<platinum-push-messaging>
元素,但没有运气。在元素的文档中,它表示您需要注册“gcm_sender_id”,然后定义元素本身,如下所示:
<platinum-push-messaging
title="Application updated"
message="The application was updated in the background"
icon-url="icon.png"
click-url="notification.html">
</platinum-push-messaging>
为了测试它,有一个名为testPush(message)
的方法,但它总是返回以下错误:
platinum-push-messaging.html:437 Uncaught(in promise)TypeError:无法读取undefined(...)的属性“active”
我不知道我是否忘了什么,而Cat Push Notifications project根本没有帮助,我无法让它发挥作用......
有人能指出我正确的方向吗?
答案 0 :(得分:4)
platinum-push-messaging
元素可用于使用gcm_sender_id
订阅推送通知(GCM代表Google Cloud Messaging)。
如果您在Firebase上托管项目,则可以在项目的Console中找到gcm_sender_id
&gt;项目设置&gt;云消息传递。
否则,您可以在Google Developers Console中创建项目,并在设置中找到ID(项目编号)。
注意:由于Docs中的“要求”部分,推送消息目前仅适用于Google Chrome。
但让我们一步一步地演示(适用于MAC和UNIX的工作 - 这就是官方演示支持的内容):
bower init
(针对bower.json
)bower install PolymerElements/paper-elements
(我们将使用的官方演示使用的元素)bower install PolymerElements/platinum-push-messaging
(您将获得bower_components
文件夹,其中包含演示所需的所有内容)platinum-push-messaging
和the offical demo manifest.json(将这些文件复制到您刚刚创建的文件夹中)在index.html
中将6 rel="imports"
更改为.html
内相应元素的bower_components
文件,并将网络组件添加到bower_components/webcomponentsjs/webcomponents-lite.min.js
。进口应该看起来像这样:
<script src="bower_components/webcomponentsjs/webcomponents-lite.min.js"></script>
<link rel="import" href="bower_components/paper-styles/paper-styles.html">
<link rel="import" href="bower_components/paper-styles/classes/global.html">
<link rel="import" href="bower_components/paper-item/paper-item.html">
<link rel="import" href="bower_components/paper-material/paper-material.html">
<link rel="import" href="bower_components/paper-toggle-button/paper-toggle-button.html">
<link rel="import" href="bower_components/platinum-push-messaging/platinum-push-messaging.html">
<link rel="manifest" href="manifest.json">
转到Google Developers Console并创建一个项目。
manifest.json
并将gcm_sender_id
设置为复制的号码。polymer serve --open
paper-toggle-button
启用推送消息(如果当前订阅没有显示任何内容,请尝试禁用并重新启用它)curl
paper-material
命令
[YOUR_PUBLIC_API_KEY]
替换为您在步骤11中复制的API密钥注意:如果您在Google Developers Console中查找内容时遇到问题,则会有great Tutorial。