【问题标题】:GPS turn off when my app (phonegap 3.1) go in background当我的应用程序(phonegap 3.1)进入后台时 GPS 关闭
【发布时间】:2013-11-04 09:11:37
【问题描述】:

phonegap (iOS) 应用程序在后台时是否可以使用 gps?在我的应用程序中,几秒钟后 gps 就会关闭。我使用 phonegap 3.1、backbonejs、requirejs、jquerymobile...

一些插件???

谢谢!

【问题讨论】:

    标签: ios cordova gps


    【解决方案1】:

    要让您的应用在 iOS 上的后台运行,您需要使用 Xcode 构建它,以便设置一个项目属性,允许您的应用在后台接收位置更新。据我所知,Phonegap Build 不允许您这样做,也不会为您这样做。

    您可以手动编辑项目 .plist 并添加值为“location”的键“UIBackgroundModes”键,或者在 XCode 中打开您的项目后,添加值为“App”的“Required Background Modes”键注册位置更新”。这将导致iOS在每次收到位置更新时触发您在navigator.geolocation.watchPosition()中注册的JS回调函数。

    有关 iOS 项目密钥的详细信息,请参阅this page

    请参阅this page 了解如何在 XCode 中设置背景模式键。您要选择的值是“应用程序注册位置更新”。

    【讨论】:

    • 请注意,如果您的应用在后台运行时用户保持静止 10 分钟或更长时间,iOS 将停止向其传递位置更新。 AFAIK,没有办法阻止它这样做。有关详细信息,请参阅this question and answers。但是,一旦应用程序被带到前台,它将再次接收位置更新。
    • 我的应用程序是关于导航器的,我认为保持活动状态。 See this
    • 是的,你的应用程序应该没问题。我的应用程序也是用于自助步行的导航器应用程序,我从来没有遇到过这个问题,因为我的用户总是在移动:-)
    • 戴夫你知道这是否还会发生吗?另外,如果您再次开始移动,iOS 是否会再次开始发送更新?
    猜你喜欢
    • 1970-01-01
    • 2013-07-03
    • 2013-09-02
    • 2016-04-07
    • 1970-01-01
    • 1970-01-01
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多