UIBackgroundModes 位置超时

UIBackgroundModes location timeout

在 Flash Builder 中,我有一个 ios 的应用程序,它每分钟都会使用地理定位获取纬度和经度。我想在后台 运行 这个所以我把这个添加到我的 Info.plist:

<key>UIBackgroundModes</key>
    <array>
        <string>location</string>
    </array>

这有效,但每次只能使用 16 分钟。之后它就进入暂停状态。当我解锁 phone 时,应用程序 运行 再次按预期解锁,但在解锁 16 分钟后它还没有获得数据。

http://blogs.adobe.com/airodynamics/2012/05/04/air-ios-background-behavior/

这个link给了我一些想法。我补充说:

NativeApplication.nativeApplication.executeInBackground = true;

到我的初始函数,但没有区别。然后我试了这个:

<key>UIApplicationExitsOnSuspend</key>
       <false/>

但还是没有变化。

我最后一个可能的想法是,此应用程序 运行 在设备上以开发模式运行,而不是分发。由于应用程序尚未经过 Apple 检查,这会影响后台模式吗?

谢谢

编辑:

我现在已经在 testFlight 中测试了我的应用程序,它做了同样的事情,在 16 分钟后暂停。

所以这是因为测试时不动。 运行 我的应用程序在我步行 30 分钟时 phone 锁定并且它一直有效。

要更改此设置,您需要访问 CLLocation 管理器并将 pausesLocationUpdatesAutomatically 更改为 false。不幸的是,我还没有找到在 Flash Builder 中更改它的方法。