我试图弄清楚如何使用聚合物<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未捕获(已承诺)TypeError:无法读取未定义的属性“ active”(…)


我不知道我是否忘记了什么,而Cat Push Notifications project根本没有帮助,我无法使其正常工作...

谁能指出我正确的方向?

最佳答案

platinum-push-messaging元素可用于使用gcm_sender_id订阅推送通知(GCM表示Google Cloud Messaging)。

如果您将项目托管在Firebase上,则可以在项目的Console>项目设置> Cloud Messaging中找到gcm_sender_id

否则,您可以在Google Developers Console中创建一个Project,并在设置中找到ID(Project Number)。

注意:由于Docs中的“要求”部分,推送消息当前仅在Google Chrome中可用。

但是,让我们逐步进行演示(适用于MAC和UNIX-这就是官方演示所支持的内容):


创建一个新文件夹并在其中打开一个终端
运行bower init(对于bower.json
运行bower install PolymerElements/paper-elements(我们将使用的官方演示所使用的元素)
运行bower install PolymerElements/platinum-push-messaging(您将获得bower_components文件夹,其中包含演示所需的所有内容)
platinum-push-messagingthe offical demo获取manifest.json(将这些文件复制到刚创建的文件夹中)
index.html中,将6 rel="imports"更改为.html内相应元素的bower_components文件,并将webcomponents包含为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设置为复制的号码。
返回Google Developers Console并打开“ API Manager”(左侧栏)“ Credentials”
创建一个新的凭据服务器密钥并复制API密钥(在以后的步骤中将需要它,因此将其保存为.txt或类似名称)
打开“库”,然后单击“ Google Cloud Messaging”,然后单击“启用”(在屏幕顶部)。
运行polymer serve --open
单击paper-toggle-button启用推式消息传递(如果当前订阅未显示任何内容,请尝试禁用并重新启用它)
复制curl底部的paper-material命令
将命令粘贴到终端,并用在步骤11中复制的API密钥替换[YOUR_PUBLIC_API_KEY]
当您运行命令时,您应该收到一条推送消息!


注意:如果您在Google Developers Console中找不到东西时遇到问题,请使用great Tutorial

javascript -  polymer 铂-推力传递元件-LMLPHP

09-25 15:46