【问题标题】:IOS - Remove or Modify permission to access location in backgroundIOS - 删除或修改在后台访问位置的权限
【发布时间】:2016-05-19 07:12:11
【问题描述】:

我们正在使用 Ionic 框架开发一个混合应用程序。

当用户访问我们应用程序的特定屏幕时,我们正在使用 cordova 地理定位插件来获取用户的当前位置。 注意 - 我们不想在后台跟踪用户位置

以下是我们为获取用户当前位置而实现的代码:

var options = { enableHighAccuracy: true, timeout : 10000 };
navigator.geolocation.getCurrentPosition( onSuccess, onFailure, options );

当用户访问该屏幕时,我们的应用仍会提示用户

即使您不使用应用程序,也允许“DemoApp”访问您的位置

有什么办法可以告诉IOS,我们不想在后台访问位置?我们担心因为这个苹果会拒绝我们的申请。

对于 UIBackgroundModes 我们的 DemoApp-Info.plist 文件只包含:

<key>UIBackgroundModes</key>
<array>
  <string>remote-notification</string>
</array>

任何帮助将不胜感激。

【问题讨论】:

  • 我从来没有玩过cordova,但听起来你使用的是requestAlwaysAuthorization而不是requestWhenInUseAuthorization。也许这将帮助您在网上搜索正确的答案。顺便说一下,这是关于它们的 Apple 文档:developer.apple.com/library/ios/documentation/CoreLocation/…
  • 感谢您的意见@Hodson。

标签: ios cordova ionic-framework cordova-plugins


【解决方案1】:

我不确定这是否是一个理想的解决方案,但我暂时通过从 DemoApp-Info.plist 文件中删除以下键值对解决了这个问题:

<key>NSLocationAlwaysUsageDescription</key>
<string></string>

【讨论】:

    猜你喜欢
    • 2021-02-08
    • 1970-01-01
    • 2020-08-21
    • 2017-09-16
    • 1970-01-01
    • 2013-12-08
    • 1970-01-01
    • 2019-05-01
    • 2021-01-29
    相关资源
    最近更新 更多