2016-05-12 12 views
0
anzeigen

Ich schreibe diesen Code in 'didFinishLaunchingWithOptions' Funktion in AppDelegate.m, im Simulator kann er Zugriffsalarm wie folgt anzeigen (nicht Standortzugriff aber Kontakt Zugang): enter image description heremein iPhone (iOS8.4) kann die Zugriffswarnung nicht anzeigen, aber im Simulator kann es

aber in meinem iPhone (8.4) passiert nichts, und die Zugriffsstatue immer 'CNAuthorizationStatusNotDetermined', dann kann ich ContactViewController nicht öffnen. Wie kann ich den Alarm in meinem iPhone anzeigen?

CNContactStore *store = [CNContactStore new]; 
    [store requestAccessForEntityType:CNEntityTypeContacts completionHandler:^(BOOL granted, NSError * _Nullable error) { 
     if(granted){ 
      NSLog(@"allow"); 
     }else{ 
      NSLog(@"deny"); 
     } 
}]; 
+0

Es wird nur beim ersten Mal gefragt! –

+0

aber es fragt nie in meinem iPhone, und deshalb kann ich ContactViewController nicht öffnen! @AshishKakkad –

+0

Und wenn Sie das erste Mal nicht zulassen, wird es auch nicht angezeigt. Löschen Sie Ihre App und neu installieren. – Lumialxk

Antwort

0

CNContactStore ist nur in iOS 9.0 und höher zur Verfügung. Hier ist ein Screenshot der Dokumentation: enter image description here

+0

aber in diesem Fall wird keiner der Entwickler es verwenden, gibt es viele Menschen mit iOS8, müssen wir Entwickler auf alle Client, nicht wahr? –

+0

@ JJ.Yuan Ihr iPhone ist iOS 8.4. Aus diesem Grund können Sie diese Warnung nicht erhalten. – Lumialxk

+0

@ JJ.Yuan Sie sollten den älteren Contact View Controller verwenden. – Lumialxk