我目前正在使用Objective-C开发iOS应用程序,该应用程序将每分钟gps坐标发送到我的API。
我使用了AFNetworking
& CoreLocation
,我也希望我的应用程序全天运行,但如果时间是在上午8点到下午6点之间,则只发送坐标。
一切都在iOS模拟器上正常工作,目标是iOS9我的应用程序每隔1分钟将他的位置发送到我的API,即使我按下主页或锁定手机。
PhoneCall
,已经处理了网络或GPS丢失,以保持我的任务正常运行。
但是当我在某些设备上测试它时(iOS9上的iPhone 4S)位置在平均1小时到1小时后停止更新。
在给定时间后iOS是否在后台关闭我的应用程序?
如果是这样,有没有办法让我的应用程序在后台工作至少10个小时,而不必提示设备用户?
实施长时间运行的后台任务是"允许"苹果如果关注:
"即使在后台运行,该应用也会让用户了解他们的位置。"
这是否意味着后台任务会在一段时间后阻止我的http请求?
对于长期部署,我希望我的应用程序能够在App Store上传,但我已经阅读了许多关于已被拒绝的应用GPS跟踪应用的帖子。
这是我的应用应具备的最低要求列表:
是否可以接受这些要求以便在AppStore上传我的应用程序?
或者我是否必须使用本地/远程通知并提示用户重新加载我的应用以使其保持运行这么长时间?
答案 0 :(得分:0)
对于不需要高精度位置数据的应用,强烈建议使用重要更改位置服务。使用此服务,仅当用户的位置发生显着变化时才会生成位置更新;因此,它非常适合为用户提供非关键的,与位置相关的信息的社交应用或应用。如果在更新发生时暂停应用程序,系统会在后台将其唤醒以处理更新。如果应用程序启动此服务然后终止,则系统会在新位置可用时自动重新启动应用程序。此服务在iOS 4及更高版本中可用,并且仅在包含蜂窝无线电的设备上可用。
我认为这适合您的情况。