如何在android中构建类似聊天应用程序的whatsapp

时间:2014-09-19 06:37:25

标签: android chat

请建议像聊天应用程序一样构建watsapp的方法。

在我的Android应用程序中,我必须添加聊天功能

我已经知道以下方法。

  1. 使用GCM(Google Cloud Messaging)聊天应用程序。

  2. 套接字编程

  3. 使用我们的网络服务

  4. 还有其他聊天应用技巧吗?

2 个答案:

答案 0 :(得分:4)

开发聊天应用程序有多种方法。

1)使用HTTP连接(在此方法中,每次要发送消息时,都必须调用Web服务并接收消息,您需要使用Timer调用Web服务。)

2)使用XMPP服务器(XMPP服务器使用Socket编程,因此一旦建立连接,它就会每次都使用该连接,您不需要每次都创建连接,例如{ {1}})。

3)使用HTTP(使用推送通知,您也可以发送和接收消息)。

答案 1 :(得分:2)

构建聊天应用所需的内容:

  1. 服务器: 这需要存储所有用户信息,如用户名,密码和gcm注册ID(稍后会介绍)。 您可以在Amazon EC2,Google App Engine等任何位置托管它 用于登录,聊天消息发送,消息列表,删除消息等的API。

  2. 注册GCM推送通知: 请参考以下链接: https://www.digitalocean.com/community/tutorials/how-to-create-a-server-to-send-push-notifications-with-gcm-to-android-devices-using-python

  3. 机器人: 注册GCM并将gcm注册ID(如第1点所述)发送到服务器进行更新。 设计用户界面以发送消息,发送消息可以通过REST API或使用套接字连接来完成。 您可以探索XMPP和MQTT。

  4. 服务器到设备通信,反之亦然: 现在,在接收来自设备的消息时,将消息发布到套接字连接并作为后备发送推送通知到接收器设备。有两种方法可以做到: i)发送消息有效负载以及推送通知 ii)仅发送“同步”并且在接收到“同步”通知时,接收者的Android应用程序可以拨打服务器,获取所有消息并将其显示给用户。这种方法的好处是消息永远不会丢失。您必须在Android应用程序端保持“同步”时间。

  5. 如果您想学习,上面是构建它的正常方法,但如果您想快速完成它,那么您可以集成Applozic Mobile & Web Chat Libraries,这将使您在半小时内开始聊天。美丽的是你甚至不需要开发或托管任何服务器。

    在Github中提供的用于构建聊天的示例代码: Android Chat SDK https://github.com/AppLozic/Applozic-Android-SDK

    网络聊天插件https://github.com/AppLozic/Applozic-Web-Plugin

    iOS Chat SDK https://github.com/AppLozic/Applozic-iOS-SDK

    PS:我是联合创始人@Applozic