将数据从网络服务器发送到 android 应用程序

Send data from a web server to an android app

我正在尝试了解如何将数据从网络服务器发送到我的 android 应用程序。这不是 request/receive 类型的问题,我要做的基本上是让我的网络服务器(例如 www.example.com/index.php)发送数据(例如字符串)到我的 android 应用程序。现在,这个数据可以随时发送,它不是你点击应用程序上的东西来接收数据的东西,而是当服务器想要发送数据时,它发送数据,我的应用程序接收它.现在我不希望我的应用每秒都在监听这些数据,5 分钟左右的时间间隔就可以了。

问题是,我将如何实现这样的目标?如何将包含 "Hello World" 的字符串发送到我的应用程序?我知道 PHP,我知道这必须使用 POST/GET 来完成,当然我知道 android 上可能会有某种类型的侦听器、服务或类似的东西一边听这些数据,但我只想知道如何处理这个问题。我的设置应该是什么?

如果有人能提供一些link或代码来发送一个基本的字符串消息,那对我来说已经足够了。

为此,您需要实施 android 推送 notification.When 您从 php 服务器发送数据,然后应用程序自动获取此数据。

是的,如果您想将数据从服务器端发送到您的应用程序,而不是通过单击按钮调用 Web 服务,您将使用 cronjob,它 运行 在服务器端定义的时间(即:如果您想要 运行 每五秒或几分钟它可能你不需要从应用端调用它)。

您可以遵循两种最佳方法。

  1. 从服务器到应用程序: 在这种情况下,使 corn job(timer service) 将推送通知发送到 android 应用程序。当应用程序收到推送通知时,创建一个 background service 从服务器下载任何数据。

注意:如果您有限制为 100 个字符的小文本,则无需创建服务,只需使用推送通知发送即可

  1. 从服务器获取数据: 在这种情况下,在 android 应用程序中创建一个 background service(auto start service)。 运行 在某个时间间隔内,例如 1 小时或更长时间(无论您有什么要求)。该服务从服务器获取数据。(在这种情况下 android 应用程序由于后台服务而消耗用户设备的电池)

我会建议您使用第一种方法,因为它是简单且最好的方法(在性能方面)您的服务器会做所有事情并且 android 应用程序必须只接收数据.


如何实现push notification best tutorial using PHP & android(its old but just read official docs)