После отправки моего приложения мне нужно получить местоположение пользователя с помощью CoreLocation (#import), но НИКОГДА не спрашивайте у меня предупреждения о разрешении.iOS locationmanager не запрашивает разрешения пользователя даже с NSLocationAlwaysUsageDescription и NSLocationWhenInUseUsageDescription в Info.plist
ViewController.h
#import "RootViewController.h"
#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
@interface AroundMeViewController : RootViewController <CLLocationManagerDelegate>
@property(nonatomic, strong) CLLocationManager *locationManager;
...
@end
__________
ViewController.m
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"LOG: %d", [CLLocationManager locationServicesEnabled]);
self.locationManager = [[CLLocationManager alloc] init];
// Set a delegate to receive location callbacks
self.locationManager.delegate = self;
// Check for iOS 8. Without this guard the code will crash with "unknown selector" on iOS 7.
if ([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
[self.locationManager requestAlwaysAuthorization];
}
....
// Start the location manager
[self.locationManager startUpdatingLocation];
NSLog(@"LOG: %@", self.locationManager);
.....
}
Я действительно старался так много способов решения этой проблемы (различные устройств, позволяет вручную из настроек конфиденциальности), но я не знаю, где моя ошибка.
Получаете ли вы обновления местоположения? –
Нет в этом приложении, но тот же код в пустом проекте отлично работает:/ Я думаю, что есть что-то, что молчаливое мое заявление. –
В настройках -> Конфиденциальность -> Службы определения местоположения. Включено ли ваше приложение? Какие разрешения у него есть? –