相关疑难解决方法(0)

如何在iOS应用程序中每n分钟更新一次后台位置?

我正在寻找一种在iOS应用程序中每n分钟更新一次后台位置的方法.我正在使用iOS 4.3,该解决方案适用于非越狱的iPhone.

我尝试/考虑了以下选项:

  • CLLocationManager startUpdatingLocation/startMonitoringSignificantLocationChanges:这根据预期在后台工作,基于配置的属性,但似乎不可能强制它每n分钟更新一次位置
  • NSTimer:当应用程序在前台运行但似乎不是为后台任务设计时,是否有效
  • 本地通知:本地通知可以每n分钟安排一次,但是无法执行某些代码来获取当前位置(用户无需通过通知启动应用程序).这种方法似乎也不是一种干净的方法,因为这不是应该使用的通知.
  • UIApplication:beginBackgroundTaskWithExpirationHandler:据我所知,当应用程序移动到后台而不是实现"长时间运行"的后台进程时,这应该用于在后台完成一些工作(也限制时间).

如何实施这些常规后台位置更新?

objective-c background-process core-location ios

202
推荐指数
9
解决办法
17万
查看次数

iOS 11中的位置访问请求

我在我的应用中请求用户位置.

locationManager.requestAlwaysAuthorization()
Run Code Online (Sandbox Code Playgroud)

这行代码应返回此警报消息:

在此输入图像描述

但是,我希望用户仅在"不允许"和"始终允许"之间进行选择.如何删除"仅在使用应用程序时"选项?

知道这是我在info.plist中包含的内容,并且从info.plist中删除这3行中的任何行导致应用程序根本不显示此警报.

在此输入图像描述

location request core-location swift ios11

8
推荐指数
1
解决办法
7256
查看次数