有没有办法以编程方式确定用户的隐私设置是否已重置?
通过Settings > General > Reset > Reset Location & Privacy
我目前正在开发一个框架,以便更容易询问用户的权限并提供更多上下文:ISHPermissionKit
在某些情况下(例如,当存储“不要再问我”时),如果系统重置,我还可以重置权限框架的内部状态。
显然,一种方法是检查先前授予/拒绝的状态现在是否未确定(例如,位置)。但是,这需要检查多个权限,并且不能用于所有权限类别。
我在重置隐私时检查[[ASIdentifierManager sharedManager] advertisingIdentifier]
和[[UIDevice currentDevice] identifierForVendor]
都保持不变。
答案 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.
这可能对你有帮助..