0

我正在尝试做一个类似于 omegle 的应用程序,它基本上以某种方式连接两个设备,以便它们可以相互通信。

我运行了一些解决方案,例如 Socket 解决方案(客户端 - 服务器),我什至实现它只是为了发现如果设备不共享同一个网络它不起作用(我的错,我没有很多关于这些问题的知识)。

我考虑实现它的另一种方式是两个设备通过 API 不断检查我的数据库(在我的服务器上)上的“对话”表中的一行,以查看是否有新消息。因此,当有人发送消息时,它会更新该对话行。但是这个解决方案似乎有点复杂,因为这似乎是一个简单的问题,而且每次让 AsyncTask 检查数据库中的变化似乎有点繁重。

所以我想问你们是否有“标准方式”来做到这一点,或者更简单的方式来做到这一点。

提前致谢

4

1 回答 1

0

我能想到的第一件事(不确定这是否是最好和正确的方法)是Client-Server使用Sockets. 使用这种类型的通信,您的服务器将存储来自(我们称之为)的消息First User。之后,您的服务器通过Push-Notificationsto发送通知Second User,应用程序读取它并通知用户。所以你可以像这样的一些基本系统:

FirstUser  ---- (send message) ---> WebServer
WebServer   ---- (push notification)  ---> SecondUser

SecondUser ---- (send message) ---> WebServer
WebServer ---- (push notification) ----> FirstUser

因此在这种情况下,工作由您的服务器端完成,应用程序只会从后端发送和接收数据。我认为这是最好的方法,如果我错了,请纠正我!

希望这可以帮助!

于 2013-10-19T16:47:10.750 回答