2016-05-13 5 views
3

Meine App möchte erkennen, ob der Benutzer in geführten Modus gegangen ist oder nicht.Fremder Verhalten mit UIAccessibilityIsGuidedAccessEnabled Bool - SWIFT

Ich habe derzeit eine NSNotification-Setup, die einen booleschen von Apple zur Verfügung gestellt, aber aus irgendeinem Grund bietet es immer eine falsche negative.

 NSNotificationCenter.defaultCenter() .addObserver(self, selector: #selector(guidedAccessChanged), name: UIAccessibilityGuidedAccessStatusDidChangeNotification, object: nil) 

wird die folgende Methode auslösen

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

     } 

    } 

Aber aus irgendeinem Grund die Protokolle Rückkehr

geführt Zugang Off

Antwort

2

Die Funktion und die Meldung sollte, ob reflektieren Guided Zugriff ist aktiviert und aktiv für Ihre App, nicht unbedingt, wenn es in den Einstellungen aktiviert ist.

Wenn Guided Access in den Einstellungen aktiviert ist, weiß ich nicht, dass die öffentliche API Sie informiert, aber wenn sie gerade ausgeführt wird (dh der Benutzer hat die Home-Taste dreimal gedrückt, um explizit Guided einzugeben) Greifen Sie auf Ihre App zu, legen Sie ihre bevorzugten Optionen fest und tippen Sie auf Start) UIAccessibilityIsGuidedAccessEnabled() sollte true zurückgeben. Aber nur dann.

siehe die Kommentare auf der akzeptierte Antwort von this question

Auch this question sehen.

+1

Interessant, dass Apples Dokumentation zu dieser Funktion besagt, dass der Rückgabewert "True" ist, wenn der Benutzer Guided Access in den Einstellungen aktiviert hat; andernfalls false. " Es wird nicht erwähnt, ob es aktiv oder inaktiv ist, basierend auf dem Home-Button Triple-Click. Ist das ein Dokumentationsfehler? –

+0

@ChristopherWhidden Nicht positiv, aber dies scheint zu sein, was andere Quellen angeben. –

+0

Danke Christopher, alles, aber nicht die Antwort, die ich hören wollte, aber da deine Antwort richtig ist, habe ich das Kopfgeld gegeben. Vielleicht werde ich dieses Problem mit Apple ansprechen – Tom