就滴答清单位置提醒来说,不给始终允许访问定位权限的话,该功能是用不了的。测试下来也是一样,给使用App时允许访问定位权限,到地点滴答清单无法提醒。不知道是技术上实现不了,还是软件上限制了。
1
sundev 2021-06-01 08:22:20 +08:00
必须给,电量消耗大
不给这个权限他没法后台运行的。 |
2
no1xsyzy 2021-06-01 09:03:30 +08:00
话说,地理围栏难道不是避免有限地需要位置的应用后台运行消耗电量的吗?
(不是所有应用都是逐向导航) |
3
wipbssldo 2021-06-01 09:19:18 +08:00
应该是不用的。地理围栏 App 可以通过注册一个地点给系统,系统通知 App,并不需要 App 自己来处理地理围栏。
看这里: https://juejin.cn/post/6844903449604292616#heading-3 有时候某些人 iOS 耗电量快就是这些 App 的骚操作导致的。 |
4
wipbssldo 2021-06-01 09:21:01 +08:00
到目前 iOS14,App 常驻后台的方式仅剩后台音频播放和始终获取地理位置两种途径,其他的都有限制。
|
5
codeisjobs 2021-06-01 09:44:21 +08:00 via iPhone
是的,必须给,不给拿不到具体的定位信息,被这个坑过,后来改成提示用户开启始终允许了
|
6
mcluyu 2021-06-01 09:46:19 +08:00
不需要。
差别是如果你给了始终, 那么你退到桌面后,顶部不会有一个蓝条提醒你有 APP 在后台使用你的位置。注册了后台位置更新的 APP,只要有定位权限,都可以在位置发送改变时收到回调或者唤醒一定时间处理自己的逻辑。 |
7
vincentxue 2021-06-01 10:08:02 +08:00 1
明确的答案,不需要。只要符合相关的条件,比如已授权,硬件自身支持,开启后台刷新,开启系统定位等等,系统会唤醒你的 App 。
你想想,如果需要始终的话,那么注册地理围栏的意义是什么?自己监听就好了。 |
8
chinvo 2021-06-01 10:20:11 +08:00 via iPhone
不需要
楼上那些说得头头是道什么不给没法激活地理围栏云云的, 要么蠢要么坏. 要了始终允许, 能搞的事情多了去了. |
9
codeisjobs 2021-06-01 10:39:30 +08:00 via iPhone
@codeisjobs #5 更正下,是我傻逼了,不是必须给始终定位,是必须给精确定位。
|
10
codeisjobs 2021-06-01 10:41:44 +08:00 via iPhone
不过如果系统是 13.0 以下的,不开启始终定位,地理围栏不给位置信息,不信可以试下。
|
11
reaCodes OP @vincentxue 就滴答清单位置提醒而言,不给始终权限的话,该功能用不了。
|
14
SingeeKing 2021-06-01 12:51:34 +08:00
滴答没用地理围栏吧,亲测滴答的提醒要比系统的快捷指令自动化稳
|
15
reaCodes OP @SingeeKing 不清楚有没有用地理围栏,但是信息提示确实挺及时的
|
16
chinvo 2021-06-01 13:46:42 +08:00
@reaCodes #12
https://developer.apple.com/documentation/corelocation/cllocationmanager/1620562-requestwheninuseauthorization If the user's choice grants When In Use authorization to your app, your app can start any location service and is eligible to receive the results while it's in use. https://developer.apple.com/documentation/corelocation/monitoring_the_user_s_proximity_to_geographic_regions In iOS, regions are monitored by the system, which wakes up your app as needed when the user crosses a defined region boundary. 简单来说, 他如果有“到 X 位置提醒”之类的功能但是没有用系统的地理围栏功能 (不管是故意的还是不会), 那么他就必须要求“总是允许”定位. 同时他能在获得授权后在后台持续保活并干某些事情. |
17
chinvo 2021-06-01 13:49:30 +08:00
给相关开发者补充一下: iOS 的 region boundary 需要启用 “background modes” 里面的 “location updates”
https://developer.apple.com/documentation/corelocation/getting_the_user_s_location/handling_location_events_in_the_background |
18
ian19znj 2021-06-01 14:00:44 +08:00 1
地址围栏一点都不准, 我设置当我离开公司告诉家人我下班了, 等我到家了都没触发.
|