【问题标题】:Is there any way to wake my application from killed state(killed from app switcher)?有什么方法可以将我的应用程序从终止状态唤醒(从应用程序切换器终止)?
【发布时间】:2014-02-12 08:27:41
【问题描述】:

我正在创建一个应用程序,该应用程序将更新的位置发送到服务器,而不管应用程序状态如何。我尝试静默推送在后台唤醒我的应用程序,但它没有工作(它工作正常,除非我的应用程序被用户从应用程序切换器杀死)。我正在使用位置管理器获取当前位置。

IOS7 是否提供此功能以在后台启动您的应用程序(即使应用程序被用户从应用程序切换器杀死)??

我已经花了五天时间没有任何成功。如果有人可以帮助我,那将非常感激。

提前致谢!!

【问题讨论】:

    标签: ios iphone ios7


    【解决方案1】:

    如果您需要精确的 GPS 位置,您可以将“位置”值添加到 Info.plist 中的 UIBackgroundModes 数组中,如“UIBackgroundModes location and significant location changes with region monitoring”中所述。如果您只需要大概的位置,您可以使用CLLocationManagerstartMonitoringSignificantLocationChanges 方法。正如文档中所写:“如果您启动此服务并且您的应用程序随后终止,如果有新事件到达,系统会自动将应用程序重新启动到后台。”

    【讨论】:

    • 我更喜欢精确但是当用户从应用程序切换器中杀死应用程序时,它在 IOS6 及更高版本上不起作用。另外 StartMonitoring 当 App 被用户从 App Switcher 杀死时,我从未收到任何事件。即使应用程序被用户杀死,我也试图获取缓存/当前位置。
    【解决方案2】:

    您可以使用显着位置更改唤醒您的应用。 当您将应用程序切换到后台时,您必须开始重大的位置更改。 然后系统将在重大位置更改后唤醒您的应用程序。 频率不快于 5 分钟,每 500 米。 您必须通过在项目 AppDelegate 中的 didFinishLaunchingWithOptions 中检查 LocationKey 来捕捉事件。

    【讨论】:

      猜你喜欢
      • 2017-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-21
      相关资源
      最近更新 更多