我的应用程序想要识别用户是否已进入引导访问模式。
我目前有一个 NSNotification 设置,它会触发苹果提供的 bool 值,但由于某种原因,它总是提供假阴性。
NSNotificationCenter.defaultCenter() .addObserver(self, selector: #selector(guidedAccessChanged), name: UIAccessibilityGuidedAccessStatusDidChangeNotification, object: nil)
会触发以下方法
func guidedAccessChanged () {
// NSLog(@"Accessabilitiy enabled: %@", UIAccessibilityIsGuidedAccessEnabled() ? @"YES" : @"NO");
print("Accessabilitiy enabled: \(UIAccessibilityIsGuidedAccessEnabled() ? "YES" : "NO" )")
if (!UIAccessibilityIsGuidedAccessEnabled()){
print("guided access Off")
}
else{
print("guided access On")
}
}
但由于某种原因,日志正在返回
最佳答案
功能和通知应反射(reflect)引导式访问是否为您的应用启用了 和事件 ,不一定是在“设置”中打开时。
因此,如果“设置”中的“引导式访问”处于启用状态,我不知道会通知您的公共(public) API,但如果它当前正在运行(即,用户已连按三次主页按钮以明确为您的应用程序输入“引导式访问” ,设置他们的首选选项,然后点击开始) UIAccessibilityIsGuidedAccessEnabled()
应该返回 true
。但只有那时。
请参阅对 this question 已接受答案的评论
另见 this question 。
关于swift - UIAccessibilityIsGuidedAccessEnabled Bool 的陌生人行为 - SWIFT,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37205791/