3

我的应用程序想要识别用户是否已进入引导访问模式。

我目前有一个 NSNotification 设置,它触发苹果提供的布尔值,但由于某种原因,它总是提供假阴性。

        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")

        }

    }

但由于某种原因,日志正在返回

引导访问关闭

4

1 回答 1

2

功能和通知应反映是否为您的应用启用并激活了引导访问,不一定是在设置中打开时。

因此,如果“引导式访问”在“设置”中打开,我不知道会通知您的公共 API,但如果它当前正在运行(即用户已三次点击主页按钮以明确输入您的应用的引导式访问,设置他们的首选选项,然后点击开始)UIAccessibilityIsGuidedAccessEnabled()应该返回true。但也只有那时。

请参阅有关此问题已接受答案的评论

另请参阅此问题

于 2016-05-16T02:25:57.437 回答