Die Eingabeaufforderung von CllocationManager zeigt Alarm an und verschwindet und verschwindet
-
25-10-2019 - |
Frage
Dies ist ein schrecklicher Fehler. Bei Verwendung von CllocationManger, entweder mit StartupdatingLocation oder mit Alasset -Methoden, um auf Metadaten für ein Foto zuzugreifen, veranlasst das System wie erwartet für den Standortzugriff ... aber die Eingabeaufforderung verschwindet, sobald es gezeigt wird. Ich kann den Grund dafür nicht finden und hoffe, dass jemand anderes dieses Problem hatte. Dies geschieht nicht bei anderen Warnungen (z. B. eine UialertView).
Ich kann sogar die Zweckeigenschaft festlegen und sie zeigt an, aber nur für einen Moment schließt es sich nur.
Dies ist ein großes Problem für mich, da ich die Erlaubnis benötige, um Fotometadaten zu verwenden.
Lösung 2
Ugh, jetzt scheint das Problem behoben zu sein. Und ich weiß nicht warum oder wie.
Andere Tipps
Erstellen Sie die CllocationManager -Instanz in einer Methode wie SO:
-(void) viewDidAppear:(BOOL)animated {
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
[locationManager startUpdatingLocation];
}
Wenn ja, dann wird die lokale Lokalisierungsmanager -Variable gereinigt, sobald die Funktion beendet ist. Sie sollten einen Verweis auf den Standortmanager entweder in einer Instanz oder in einer statischen Variablen speichern:
static CLLocationManager *locationManager;
-(void) viewDidAppear:(BOOL)animated {
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
[locationManager startUpdatingLocation];
}