只要网络可用,iOS应用就会将数据上传到服务器

时间:2012-05-16 22:24:12

标签: ios background reachability

我有一个应用程序可以跟踪用户根据观察结果输入数据的野生动物(例如,用户输入他们看到3个驼鹿)。然后将数据上载到服务器。但是,因为这个应用程序将在通常没有互联网连接的领域中使用,我想在没有连接的情况下保存数据,并在网络可用时立即上传数据

我知道可达性,但看起来我只能检查当时是否有互联网连接,并且没有在后台检查互联网连接

总结一下:

  1. 如果用户提交数据时存在互联网连接,则表示没问题。
  2. 如果没有互联网连接,当用户提交数据时,我想保存此数据。只要有互联网连接,我就希望上传数据,而无需用户再次打开应用。我不能再依赖用户再次打开应用程序导致数据被提交,因为他们可能只会在单元格范围之外使用此应用程序,并且可能永远不会在具有网络连接,因此必须自动为他们提交这些数据。
  3. 环顾四周,我无法找到答案,所以我开始怀疑......这是否可能?

2 个答案:

答案 0 :(得分:0)

不,Apple不允许应用程序为此目的在后台无限期运行,并且它们不允许远程触发应用程序或任何此类性质的应用程序。最好的情况是你可以让你的应用程序在后台运行以获得有关主要位置更改的通知,但你必须将它作为一个适当的功能而不是黑客来解决这个限制,否则你的应用程序将不会得到批准苹果。

答案 1 :(得分:0)

我知道可以在后台使用网络,但仅在用户关闭应用后的有限时间内使用。您可以创建一个计时器来检查网络连接(使用可达性或通过ping Google)并将计时器设置为在应用关闭后每分钟触发一次。它不是一个非常有效的解决方案,但它可能有效。你应该看一下应用程序关闭后你可以维持连接多长时间,我认为这是5-10分钟。