快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

IOS中城市定位的示例分析

这篇文章主要为大家展示了“IOS中城市定位的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“IOS中城市定位的示例分析”这篇文章吧。

创新互联建站是专业的昌邑网站建设公司,昌邑接单;提供做网站、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行昌邑网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

IOS 城市定位

前言:

获取经纬度并且转换成城市

iOS8定位失败解决

获取中文城市

1、建立简单的项目, 导入CoreLoation.framework:

IOS中城市定位的示例分析

2、在Info.plist中加上NSLocationAlwaysUsageDescription值为AlwaysLocation

IOS中城市定位的示例分析

3、使用CLLocationManager对象进行定位:

_locationManger = [[CLLocationManager alloc] init]; 
_locationManger.delegate = self; 
[_locationManger requestAlwaysAuthorization];//iOS8需要加上,不然定位失败 
_locationManger.desiredAccuracy = kCLLocationAccuracyBest;  //最精确模式 
_locationManger.distanceFilter = 100.0f; //至少10米才请求一次数据 
[_locationManger startUpdatingLocation]; //开始定位

4、在CLLocationManagerDelegate代理方法(iOS8)中获取定位信息并且转换成中文城市:

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error{ 
  NSLog(@"定位失败"); 
  [_locationManger stopUpdatingLocation];//关闭定位 
} 
 
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{ 
NSLog(@"定位成功"); 
[_locationManger stopUpdatingLocation];//关闭定位 
 
CLLocation *newLocation = locations[0]; 
NSLog(@"%@",[NSString stringWithFormat:@"经度:%3.5f\n纬度:%3.5f",newLocation.coordinate.latitude, newLocation.coordinate.longitude]); 
 
// 保存 设备 的当前语言 
NSMutableArray *userDefaultLanguages = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"]; 
// 强制 成 简体中文 
[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"zh-hans", nil nil] forKey:@"AppleLanguages"]; 
CLGeocoder * geoCoder = [[CLGeocoder alloc] init]; 
[geoCoder reverseGeocodeLocation:newLocation completionHandler:^(NSArray *placemarks, NSError *error) { 
  for (CLPlacemark * placemark in placemarks) { 
 
    NSDictionary *test = [placemark addressDictionary]; 
    // Country(国家) State(城市) SubLocality(区) 
    NSLog(@"%@", [test objectForKey:@"State"]); 
 
    // 当前设备 在强制将城市改成 简体中文 后再还原之前的语言 
    [[NSUserDefaults standardUserDefaults] setObject:userDefaultLanguages forKey:@"AppleLanguages"]; 
  } 
}];   
}

首次启动时,会提示是否开启定位并显示NSLocationAlwaysUsageDescription的值:

IOS中城市定位的示例分析

其中字典test的具体内容是:

IOS中城市定位的示例分析

以上是“IOS中城市定位的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网站标题:IOS中城市定位的示例分析
文章网址:http://6mz.cn/article/pihjcj.html

其他资讯