Phonegap推送插件和GCM。那复杂吗?

时间:2016-08-28 23:31:37

标签: cordova google-cloud-messaging phonegap-plugins phonegap-build phonegap-pushplugin

我一直试图让我的phonegap / cordova应用程序(用于Android)与GCM一起工作,没有运气。

我按照这里的文档: https://github.com/phonegap/phonegap-plugin-push
设置样本phonegap应用程序并使用phonegap cli内置推送功能发送通知非常简单,并且按预期工作。

当我尝试使用我的GCM帐户时问题就出现了 我首先将SENDER_ID设置为我的GCP项目编号(验证它是正确的ID ...)

我从cli执行了“phonegap serve”并访问了phonegap android开发者应用程序以获得新的设备注册ID,并且我获得了一个新的注册ID(在清除应用数据之后)。

问题是我认为设备没有真正注册GCM,因为即使我输入“test123xxx”作为我的发件人ID,我仍然会获得一个新的设备注册ID,所以我怀疑单独设置SENDER_ID赢了这个诀窍和我的问题是如何让我的phonegap应用程序在GCM中注册设备?

非常感谢任何帮助! 谢谢。

编辑 - 通过@jcesarmobile

找到了解决方案

显然当使用“phonegap serve”时,推送插件将使用phonegap内部“推送”功能,不会注册GCM,我必须构建应用程序,然后它工作,我使用android studio在我的设备上调试它如果这有助于某人...

1 个答案:

答案 0 :(得分:1)

请尝试以下步骤在Registering Client Apps中注明GCM:

  
      
  1. 客户端应用使用Instance ID API获取注册令牌。对此API的调用必须将授权实体设置为您的应用服务器sender ID,并将范围设置为GCM的相应值(取决于您的平台)。有关此API的完整详细信息,请参阅API参考。

  2.   
  3. 客户端应用将注册令牌传递给应用服务器。

  4.   
  5. 应用服务器保存注册令牌,并向客户端应用程序确认该过程已成功完成。
  6.   

如果应用服务器无法完成其部分注册握手,则客户端应用应重试向服务器发送注册令牌或删除注册令牌。

另外,请尝试在Implement Push Notifications in your PhoneGap Application上阅读本教程。希望它有所帮助!