在使用 Parse 实现推送时,我没有使用任何与 Google Cloud Messaging 相关的东西。我没有打开 Google 开发控制台并打开 GCM 消息传递,也没有获得任何发件人 ID,也没有注册设备以获取注册 ID,但是 Parse 可以发送推送。我想知道 Parse 使用它自己的套接字吗?在 Parse Android 源代码中,我无法捕捉到与此相关的任何内容。现在所有 Parse 迁移服务都需要 GCM 注册 ID,包括 Parse 自己的开源推送后端解决方案。有人可以提供这方面的详细信息吗?
最佳答案
解析请使用 GCM。他们只使用自己的帐户。
你不用相信我,android SDK 已经在前一段时间开源了: https://github.com/ParsePlatform/Parse-SDK-Android
这些是用于集成到 GCM 的类: https://github.com/ParsePlatform/Parse-SDK-Android/blob/bdd5f50d51d30030b9df12c0e09d08d8859e64be/Parse/src/main/java/com/parse/GCMService.java https://github.com/ParsePlatform/Parse-SDK-Android/blob/e2329512e5531f0efd56671c02f476285f87386b/Parse/src/main/java/com/parse/GcmRegistrar.java https://github.com/ParsePlatform/Parse-SDK-Android/blob/bdd5f50d51d30030b9df12c0e09d08d8859e64be/Parse/src/main/java/com/parse/GcmBroadcastReceiver.java
但是他们有一种方法可以在没有 GCM 的情况下支持推送通知,它主要用于非 Google 设备或在非 Google-Play 市场上发布应用程序。这叫做PPNS
提供者之间的切换是在这个类中完成的: https://github.com/ParsePlatform/Parse-SDK-Android/blob/bdd5f50d51d30030b9df12c0e09d08d8859e64be/Parse/src/main/java/com/parse/PushService.java
PPNS 类应该由名为 com.parse.PPNSService 的类处理,该类不在 github 代码中。它是通过反射实例化的,我猜他们稍后会以某种方式将它添加到 jar 中并且他们没有将其公开。它肯定必须打开并处理它自己的套接字。
关于android - 如何在没有 gcm 注册的情况下解析发送推送?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35666752/