如何分享两个Android应用程序的GCM服务?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何分享两个Android应用程序的GCM服务?相关的知识,希望对你有一定的参考价值。

根据我的研究,GCM需要以下数据

APP API KEY
Server KEY
Project Number

问题是,有两个应用程序,我希望它们都使用相同的GCM服务,这意味着接收相同的消息,使用相同的数据库来存储注册ID。但是,我发现这样的冲突:

如果使用不同的谷歌项目,服务器API密钥与项目ID不匹配(似乎项目编号应与服务器API密钥对齐)

但是,很明显,如果我使用相同的项目,APP API KEY也不一样。

答案

你要求的是不可能的。即使两个应用程序使用相同的Google项目,相同的项目编号和相同的API密钥(可能),每个应用程序将分别注册到GCM并接收不同的注册ID。您必须将邮件发送到两个注册ID,以便同一设备上的两个应用程序都能接收它。

但是,在同一设备上接收相同消息的两个应用程序是没有意义的。如果您的要求是具有相同应用程序的两个版本(例如免费版本和付费版本),并且每个设备只安装了两个版本中的一个,则您的服务器无需了解两者之间的差异应用程序,如果您使用相同的项目编号和API密钥(因为相同的API密钥将用于向两个应用程序发送消息)。

以上是关于如何分享两个Android应用程序的GCM服务?的主要内容,如果未能解决你的问题,请参考以下文章

使用 GCM 的 Android 聊天应用程序如何工作?

如何通过xmpp gcm将ack从android应用程序发送到服务器

Android GCM 中的通知生成问题

android中的两个gcm接收器

(新)GCM 消息收到,但如何解析?

从应用服务器接收 GCM 推送通知消息的步骤