是否以编程方式确定用户的隐私设置是否已重置

时间:2014-06-30 10:07:25

标签: ios permissions privacy user-permissions

有没有办法以编程方式确定用户的隐私设置是否已重置? 通过Settings > General > Reset > Reset Location & Privacy

我目前正在开发一个框架,以便更容易询问用户的权限并提供更多上下文:ISHPermissionKit

在某些情况下(例如,当存储“不要再问我”时),如果系统重置,我还可以重置权限框架的内部状态。

显然,一种方法是检查先前授予/拒绝的状态现在是否未确定(例如,位置)。但是,这需要检查多个权限,并且不能用于所有权限类别。

我在重置隐私时检查[[ASIdentifierManager sharedManager] advertisingIdentifier][[UIDevice currentDevice] identifierForVendor]都保持不变。

2 个答案:

答案 0 :(得分:0)

很抱歉,但这无法完成。没有委托调用这样做。最好的方法是检查

  

applicationDidBecomeActive:

答案 1 :(得分:0)

[[NSNotificationCenter defaultCenter]addObserver:self
       selector:@selector(privacyWasReset:)  
           name:NSUserDefaultsDidChangeNotification
         object:nil];



[[NSNotificationCenter defaultCenter] removeObserver:self name:NSUserDefaultsDidChangeNotification object:nil];
to ->appDidBecomeActive method and also
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(privacyWasReset) name:NSUserDefaultsDidChangeNotification object:nil];
to-> applicationDidEnterBackground method.

这可能对你有帮助..