我正在为Android开发一个聊天应用程序。我已经阅读了几周关于XMPP和Google云消息传递(以及Firebase云消息传递)的资料,但仍然感到非常困惑。
目前,我已经在本地设置了一个XMPP服务器(Ejabberd),并成功使用Smack库将我的Android应用程序连接到它。
据我所知,我需要使用GCM或更新的FCM进行推送通知,因此我已经在Google云平台上创建了一个项目。我的Android应用程序也可以使用Smack库连接到它(而不是直接连接到我的XMPP服务器)。在我的服务器上,我有一个小型的Java应用程序,也使用Smack库连接到GCM。
到目前为止一切都很好。我的大困惑是:如何在使用GCM进行推送通知时使用我的XMPP服务器?每个文档、示例、指南和教程都只告诉我如何连接到GCM,但没有人告诉我如何将我的XMPP服务器与GCM结合使用。我的Java应用程序只是连接到GCM,并从GCM接收和发送消息,而我的XMPP服务器只是坐在那里什么也没做。实际上,我的Android应用程序和服务器Java应用程序专门使用GCM,而不是我的XMPP服务器。
希望有人能帮助我全面理解这个问题,我显然缺少一些关键元素来实现这个功能。
目前,我已经在本地设置了一个XMPP服务器(Ejabberd),并成功使用Smack库将我的Android应用程序连接到它。
据我所知,我需要使用GCM或更新的FCM进行推送通知,因此我已经在Google云平台上创建了一个项目。我的Android应用程序也可以使用Smack库连接到它(而不是直接连接到我的XMPP服务器)。在我的服务器上,我有一个小型的Java应用程序,也使用Smack库连接到GCM。
到目前为止一切都很好。我的大困惑是:如何在使用GCM进行推送通知时使用我的XMPP服务器?每个文档、示例、指南和教程都只告诉我如何连接到GCM,但没有人告诉我如何将我的XMPP服务器与GCM结合使用。我的Java应用程序只是连接到GCM,并从GCM接收和发送消息,而我的XMPP服务器只是坐在那里什么也没做。实际上,我的Android应用程序和服务器Java应用程序专门使用GCM,而不是我的XMPP服务器。
希望有人能帮助我全面理解这个问题,我显然缺少一些关键元素来实现这个功能。