Trong iOS8, bạn cần yêu cầu ủy quyền của người dùng trước khi nhận được vị trí của họ.
Có hai loại yêu cầu:
-[CLLocationManager requestWhenInUseAuthorization]
phép bạn có được vị trí của người sử dụng chỉ khi ứng dụng được đánh thức.
-[CLLocationManager requestAlwaysAuthorization]
cho phép bạn có được vị trí của người dùng ngay cả khi nó ở chế độ nền.
Bạn có thể chọn giữa chúng cho phù hợp.
Ví dụ, đặt điều này trước khi bạn bắt đầu cập nhật vị trí:
// ask for authorization
CLLocationManager * locationManager = [[CLLocationManager alloc] init];
// check before requesting, otherwise it might crash in older version
if ([locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
[locationManager requestWhenInUseAuthorization];
}
Bên cạnh đó, đừng quên thêm hai phím
NSLocationWhenInUseUsageDescription
và
NSLocationAlwaysUsageDescription
vào thông tin của bạn .plist.
Để trống các giá trị để sử dụng các tin nhắn mặc định hoặc bạn có thể tùy chỉnh các giá trị của riêng mình bằng cách nhập các giá trị.
Nguồn
2014-09-19 22:40:42
thể trùng lặp của [iOS 8: Location Services không làm việc] (http://stackoverflow.com/questions/24062509/ios-8-location-services-not -working) –