是否可以即时将位置许可从“始终允许”切换为“使用中”?
我有此要求,用户可以选择是否要让该应用程序全天候24x7跟踪或仅在打开该应用程序时进行跟踪。
即使设置设置为“始终允许”,我也可以根据用户偏好进行检查,以确保不跟踪它。用户抱怨说,即使我们选择了“不跟踪”模式,您仍然需要“始终允许”权限。
我尝试过的事情:
- (void) switchToWhenInUsePermissionBasedOnUserPref
{
[_locManager stopUpdatingLocation];
[_locManager requestWhenInUseAuthorization];
[_locManager startUpdatingLocation];
}
答案 0 :(得分:2)
由于iOS的设计原则之一是限制可以向用户授予许可的应用程序数量,因此您无法以编程方式进行任何操作。
在应用程序需要用户修改已经给定的权限的情况下,我看到的是显示带有一些相关信息(原因等)的警报,然后提供一个将用户带到设备首选项的按钮,其中他们可以自己进行必要的更改。是否。