如何在Parse.com中验证deviceToken的GCM发送者ID

时间:2016-02-02 08:44:02

标签: android parse-platform push-notification google-cloud-messaging

我们正在使用Parse.com发送推送通知。随着宣布关闭,我们现在正在研究如何迁移到另一项服务。在Android上,我们尚未配置任何GCM发件人ID,因此我们一直隐含使用Parse.com的发件人ID。这是迁移的问题(请参阅Urgent note for Parse Android Push usersMigrating an Existing Parse App导出GCM注册ID 部分)。

因此,我们现在正在使用我们自己的GCM发件人ID准备新版Android应用。在Parse.com中有什么方法可以验证哪些设备(安装)与我们的发件人ID相关联?我们如何检查我们的更新是否成功? Google是否提供任何API来直接或间接检查发件人ID是否适用于我们的Google项目?

任何涉及编写代码的工具或方法都可以。

3 个答案:

答案 0 :(得分:2)

感谢您发布此问题。我帮助处理OneSignal,并根据反馈意见更新了上述博文。

博客文章现在指示用户也更新他们的ParseInstallation以设置他们的GCMSenderId,如下所示:

final ParseInstallation parseInstallation = ParseInstallation.getCurrentInstallation();
parseInstallation.put("GCMSenderId",YOUR_NEW_SENDER_ID); 
parseInstallation.saveInBackground();`

这将允许您跟踪现在使用新GCM发件人ID订阅的用户。它还会告诉像我们这样的Parse导入工具,可以导入和使用这些订阅的设备。

答案 1 :(得分:0)

开源Parse Server项目目前不支持推送通知,但它在路线图中,应该很快就会提供。

如果您希望将Parse Push应用程序迁移到其他GCM提供程序,则需要使用自己的GCM Sender Id更新Android Manifest文件。将应用部署到Google Play商店后,更新到最新版应用的客户也会使用您的GCM发件人ID进行注册。

您需要跟踪有多少活跃用户已更新到新版本的应用,以便更好地了解迁移的进展情况。

Parse Installation对象会自动跟踪客户端应用程序版本号。一种快速简便的方法,可以确定将应用程序更新到应用程序新版本的客户数量,以过滤运行新appVersion或更新版本的安装对象。

当然,在Google Play商店发布新版本之前,您应该确保使用新的发件人ID正确地向GCM注册了应用的更新版本。 Android Documentation on Cloud Messaging涵盖了最佳实践。如果您的应用程序配置正确,您应该能够使用新的推送通知提供程序向更新的客户端发送推送通知。

答案 2 :(得分:0)

您可以在我们的指南中找到有关发送和接收推送通知的信息:https://parse.com/docs/android/guide#push-notifications

特别是

...对于想要从多个推送提供程序发送推送的开发人员的高级功能,Parse允许您选择注册您的应用程序以推送其他GCM发件人ID。要执行此操作,请使用以下<meta-data>标记指定其他GCM发件人ID,作为应用AndroidManifest.xml中<application>元素的子级... 和

GCMSenderId:此字段仅对使用GCM推送类型的Android ParseInstallations有意义。它保留用于指示Parse使用备用GCM发送方ID将推送发送到此安装。除非您从其他推送提供程序上载安装数据,否则通常不应设置此字段。如果设置此字段,则必须在Parse应用程序的推送设置中设置与此GCM发件人ID对应的GCM API密钥。