Ich schreibe eine Mac-App, die CoreLocation-Dienste verwenden muss. Der Code und die Position funktionieren einwandfrei, solange ich den Dienst im Sicherheitseinstellungenbereich manuell authentifiziere. Das Framework wird jedoch nicht automatisch mit einem Berechtigungsdialog geöffnet. Die Dokumentation besagt:
Wichtig Der Benutzer hat die Möglichkeit, den Zugriff einer Anwendung zu verweigern zu den Standortservicedaten. Während seiner ersten Verwendung durch ein Anwendung fordert das Core Location Framework den Benutzer zur Bestätigung auf die Verwendung des Standortdienstes ist akzeptabel. Wenn der Benutzer das verweigert Anforderung meldet das CLLocationManager-Objekt einen entsprechenden Fehler an sein Vertreter bei zukünftigen Anfragen.
Ich erhalte einen Fehler bei meinem Delegaten, und der Wert von + locationServicesEnabled ist in CLLocationManager korrekt. Der einzige Teil, der fehlt, ist die Aufforderung an den Benutzer zu den Berechtigungen. Dies geschieht bei meiner Entwicklung MPB und einem Freund MBP. Keiner von uns kann herausfinden, was falsch ist.
Ist jemand in das hineingeraten?
Relevanter Code:
%Vor%Ich habe festgestellt, dass auf dem Mac, wenn Sie Standortdienste durch Aufruf von
starten %Vor%Es löst
aus %Vor%Mit einem Status von
%Vor%Wenn Sie auf diesen Status achten, starten Sie die Aktualisierung des Standorts erneut und es wird der Berechtigungsdialog ausgelöst: z. B.
%Vor%Tags und Links macos cocoa core-location