#import <CoreLocation/CoreLocation.h>
@interface FuJinVC ()<CLLocationManagerDelegate>
@property (nonatomic , strong) CLLocationManager *manager;
- (void)viewDidLoad {
[super viewDidLoad];
[self location];
}
- (void)location{
self.manager = [[CLLocationManager alloc] init];
self.manager.delegate = self;
[self.manager requestWhenInUseAuthorization];
self.manager.desiredAccuracy = kCLLocationAccuracyThreeKilometers;
[self.manager startUpdatingLocation];
}
- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error
{
DLog(@"失败%@",error);
[manager stopUpdatingLocation];
}
- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status{
NSLog(@"授权状态改变");
}
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations
{
DLog(@"%@定位中",locations);
CLLocation *new = [locations lastObject];
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
[geocoder reverseGeocodeLocation:new completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
DLog(@"%@数组 %@错误",placemarks,error);
if (placemarks.count > 0) {
CLPlacemark *placemark = [placemarks objectAtIndex:0];
NSString *city = placemark.administrativeArea;//获取城市
NSString *country = placemark.country;// 获取国家
DLog(@"位于:%@,%@",city,country);
DLog(@"%@",placemark.addressDictionary[@"Name"]);
}
}];
[manager stopUpdatingLocation];
}
获取地理位置
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 并不是所有的APP都要获取你当前的地理位置的,但是有的APP对这方面是特别重要的,例如催收的行业,准确获取借款人的...
- 1:iOS xcode工程启用定位 在Info.plist中增加NSLocationWhenInUseUsageD...
- iOS8 CoreLocation 更新 想要在项目中使用定位,要通过以下步骤。 1.在项目的plist文件添加新...
- 要使用CLLocationManager获取定位的话,首先要引入系统框架CoreLocation.framewor...