C# iOS中的循环后台任务

C# iOS中的循环后台任务,c#,ios,objective-c,xamarin.ios,background-process,C#,Ios,Objective C,Xamarin.ios,Background Process,我想制作一个应用程序,定期、偶尔、自动地从用户定义的站点列表下载一些数据,这样它就可以根据这些数据分析和显示历史图表和其他报告 如果我在Windows中这样做,我会使用系统任务调度器;如果我在Unix中,我会使用cron;如果我使用安卓系统,我会使用服务。我想知道如何在iOS中实现它 就我的研究而言,这在iOS中并不是一件小事,因为没有公共接口来实现这一点。但是,要做到这一点,有一些变通方法: 当应用程序唤醒时拉取历史数据:不可能,因为我不是数据的提供者,而且我支持的大多数数据提供者都不存储或

我想制作一个应用程序,定期、偶尔、自动地从用户定义的站点列表下载一些数据,这样它就可以根据这些数据分析和显示历史图表和其他报告

如果我在Windows中这样做,我会使用系统任务调度器;如果我在Unix中,我会使用cron;如果我使用安卓系统,我会使用服务。我想知道如何在iOS中实现它

就我的研究而言,这在iOS中并不是一件小事,因为没有公共接口来实现这一点。但是,要做到这一点,有一些变通方法:

  • 当应用程序唤醒时拉取历史数据:不可能,因为我不是数据的提供者,而且我支持的大多数数据提供者都不存储或提供对历史数据的访问

  • 我自己下载数据,让客户在醒来时拉出来:这是不可取的。这不仅需要在我这方面增加昂贵的基础设施(这意味着向我的用户收取我打算成为免费应用的费用),而且一些内容提供商还需要登录凭据。我不想要求我的用户的登录信息来访问他们自己可以获得的信息

  • 保存上一次更新的时间戳,并在用户将应用程序置于前台时下载数据(如果时间戳过期):这不符合我的目的,因为数据可能(并且预计)在时间上快速变化。此应用程序的全部目的是定期自动下载此数据,以便用户再次打开应用程序后,所有历史数据都可用

  • 使用本地通知:与以前几乎相同。启动应用程序需要用户交互,而应用程序的整个要点就是获取这些数据,即使用户不使用该设备

  • 使用推送通知:由于这些只是需要用户交互才能唤醒应用程序的通知,因此它们不能用于与本地通知相同的原因。在应用程序唤醒后,您似乎可以处理所有挂起的推送通知,但我了解到您无法为这些通知定义自定义字段

  • 使用后台任务:从技术上讲,这似乎是所有选项中最有前途的,但这仅适用于非常特定类型的应用程序。我想“报摊应用程序”是我能得到的最接近的应用程序,它实际上是用来在后台下载数据的。然而,正如它的名字,它是用来下载“杂志或报纸问题”。我想做的事情是否可以归为这一类完全取决于应用程序审查者,我不想制作一个可能会因技术问题而被拒绝的应用程序


所以,我的问题是:有没有其他我不知道的方法?有没有类似的应用程序?

您的评估是正确的。您仅有的两个选择是托管自己的定期下载数据的服务(第二个要点)或使用Newstand。对于Newstand,您的应用程序可能符合定义;这可能只取决于你对应用程序的描述。

你的评估是正确的。您仅有的两个选择是托管自己的定期下载数据的服务(第二个要点)或使用Newstand。对于Newstand,您的应用程序可能符合定义;这可能取决于你如何描述应用程序。

在iOS中,你唯一的选择实际上是使用服务器端基础设施。不要害怕向用户收费;如果你提供的服务真的有用,人们会付钱的。我确实明白这是一个很大的额外工作,等等,但这确实是唯一的办法


报摊应用程序一天只能下载一次数据,而且它们仍然需要s服务器端推送通知才能开始下载,因此您必须安装一些基础设施。不过,更重要的是,苹果实际上对报摊的要求相当严格;我已经尝试过几次了:你不一定非得是杂志/期刊,但你的应用程序应该主要用于内容分发

在iOS中,您唯一的选择实际上是使用服务器端基础设施。不要害怕向用户收费;如果你提供的服务真的有用,人们会付钱的。我确实明白这是一个很大的额外工作,等等,但这确实是唯一的办法


报摊应用程序一天只能下载一次数据,而且它们仍然需要s服务器端推送通知才能开始下载,因此您必须安装一些基础设施。不过,更重要的是,苹果实际上对报摊的要求相当严格;我已经尝试过几次了:你不一定非得是杂志/期刊,但你的应用程序应该主要用于内容分发

我认为您还有一个选择,即基于位置的更新,但这取决于您的用户是否定期移动


请参见和

我认为您还有一个选择,即基于位置的更新,但这取决于您的用户定期移动


请参见和

也许这会有所帮助。@BlackFlam3不太可能。他的要求可以通过许多不同的机制轻松满足。这个问题和我的问题不太一样。也许这会有帮助。他的要求可以通过许多不同的机制轻松满足。这个问题和我的问题不一样。你有关于报摊应用程序特征的信息吗?您是否知道有任何应用程序使用报摊功能,但这些应用程序并非严格用于下载“杂志或报纸问题”?您是否有任何关于报摊应用程序特征的信息?你知道有哪个应用程序使用的是报摊功能,而不是严格意义上的下载“杂志或报纸问题”吗?我在苹果论坛上问过,他们明确对报摊说不,就是这样。放置我自己的服务器的问题是,一些内容提供商需要登录凭据,而我需要