【发布时间】:2015-03-30 07:30:33
【问题描述】:
我正在做一个项目,我希望我的服务器向我的应用程序发送一些数据(无需从移动设备调用 Web 服务)。它就像一个操作移动应用程序以添加数据的网络面板。因此,当用户在网站中添加数据并单击添加时,它应该将该数据添加到移动应用程序(如果移动设备连接到互联网)。这也就像向 android 应用程序发送命令一样。 我计划为此使用推送通知 (GCM),但推送通知不是一个好的选择,因为我不想让用户知道我们正在移动应用程序中添加数据。即使应用程序未处于活动状态或未打开,它也应该添加。
我认为我有以下 3 个选项
在服务器和移动设备之间建立会话。启动客户端服务器通信
使用短信发送命令,然后按要求调用网络服务
每隔 15-20 秒调用一次 Web 服务以检查是否有任何更新。 (即使在后台)
如果我有任何其他选择来实现这一点,请提出建议。
【问题讨论】:
-
没有
web-service也没有GCM怎么可能?如果您不想使用web service,请删除第二个和第三个选项。 -
我提到了第二个和第三个选项,只是为了让其他人知道我们总共有这些选项。我正在寻找一个我不必使用网络服务的选项。但如果没有可用的东西,那么一定要考虑以最有效的方式使用它。
-
就我而言,唯一的方法是在后台运行一项服务,该服务将更新从您的服务器获取数据并同步它。我在我的许多应用程序中都做过这件事。并且根据您的要求,
GCM在这里没有用处。 -
好的,谢谢@MD。您能否建议我是否必须为此运行后台 android 服务,那么该 android 服务是否应该调用 Web 服务来检查是否有任何更新?与选项 3 相同,但仅在后台服务中。另外,您如何找到选项 2。意味着向用户发送 SMS,侦听器将检测到然后执行相应的操作。 Listener 还会立即从用户的设备中删除该 SMS,这样用户就不会收到通知。
-
@sanchitsigh 是的。您所要做的就是调用一个主要的 Web 服务来检查
Date是否更改为服务器。如果是,那么某些人会触摸您的服务器(数据),如果不是,则无事可做。
标签: android client-server google-cloud-messaging