我正在寻找一个类似恶魔的解决方案,用户并不是真正意识到…
它甚至可能吗?我有什么选择?
我已经尝试过对此进行研究并提出了以下选项:
>作为面向位置的应用程序,Apple可能会批准它在后台运行.
让他们批准有多难?
用户是否能够关闭应用程序?
>使用推送通知触发我的应用程序发送更新.那可能吗?您可以在通知到达时将在设备上定义回调吗?
我可能没有想过的任何其他想法?
还有一件事 – 这个应用程序有点像内部使用,在公司内部,所以它不必在App Store上 – 如果这是可能的,或者有所作为.
解决方法 好吧,不是直接的答案.但在阅读你的问题之后有些想法.I’m looking for a demon-like solution that the user is not really aware of…
好吧,你无法在没有用户交互的情况下启动第三方应用程序,except the case when app uses voip.应用程序使用’voip’可以在系统启动时启动而无需用户交互.
Won’t the user will be able to just close the app?
从documentation开始
Even if you develop your app using iOS SDK 4 and later,you must still be prepared for your app to be killed without any notification.
The user can kill apps explicitly using the multitasking UI. In addition,if memory becomes constrained,the system might remove apps
from memory to make more room. Suspended apps are not notifIEd of
termination but if your app is currently running in the background
state (and not suspended),the system calls the
applicationWillTerminate: method of your app delegate. Your app cannot
request additional background execution time from this method.
没有办法阻止应用程序出现在多任务栏中.如果它在多任务栏中,则用户可以随意终止它.
Well user can stop you from using Location services as well..
在你做了所有的研究之后,我确信你知道它.当你第一次尝试使用它时,用户可以禁用位置服务. *** 作系统向请求权限的用户显示警报,用户可以轻松单击“否”.就像我说的那样,我相信你知道这一点.
好的,记住以上几点,我想你可以做到这些,
1)核心位置具有进行区域监控的能力.
从documentation开始
Apps can use region monitoring to be notifIEd when the user crosses geographic boundarIEs. You can use this capability to generate alerts
when the user gets close to a specific location. For example,upon
approaching a specific dry cleaners,an app Could notify the user to
pick up any clothes that had been dropped off and are Now ready. In
iOS,regions associated with your app are tracked at all times,
including when your app is not running. If a region boundary is
crossed while an app is not running,that app is @R_270_4404@ed into the
background to handle the event. Similarly,if the app is suspended
when the event occurs,it is woken up and given a short amount of time
to handle the event.
看看你是否能以某种方式使用区域设置来定期让你的应用程序在后台执行.那是一个选择.
2)使用重要的变更监控功能.
从相同的文件..
The significant-change location service offers a low-power location service for devices with cellular radios. This service is available
only in iOS 4.0 and later and can also wake up an app that is
suspended or not running.
我不知道这个重要的变化值可以定制多少.但这也允许应用程序在后台唤醒.
3)您可以在后台申请标准位置服务
您可以将您的应用声明为需要后台位置服务.
在这种情况下,您要求后台工作权限,您需要在说X秒后以某种方式检查位置,并将更新发送到服务器.您可能面临一些挑战:例如,如果您尝试访问位置并向服务器发送请求,则 *** 作系统可能会终止该应用程序. GPS需要大量内存,我不认为后台应用程序可以继续访问互联网.虽然不确定.
还有一点
Using push notifications to trigger my app to send an update
但是当通知到来时,推送通知将显示警报/徽章或播放声音(如果我的理解是正确的).这不是你的意思吗?也不需要使用推送通知只是为了定期唤醒,您可以使用本地通知并使服务器远离它.
我认为前两个是你唯一的选择,因为它们让你在后台打开(根据通知).
祝好运!!
总结以上是内存溢出为你收集整理的iOS中后台任务有哪些选项全部内容,希望文章能够帮你解决iOS中后台任务有哪些选项所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)