美文网首页
原生手机定位教程

原生手机定位教程

作者: _源计划 | 来源:发表于2016-05-12 10:40 被阅读85次

1、首先导入CoreLocation.framework这个依赖库,并在相应的控制器里导入头文件import<CoreLocation/CoreLocation.h>

2、在info.plist文件里加入两个字段NSLocationWhenInUseUsageDescription,NSLocationAlwaysUsageDescription类型都是string类型的,如图

3、添加相应的协议 CLLocationManagerDelegate

4、下面就是代码部分

(1)、CLLocationManager * _locationManager;添加对象

(2)、初始化对象-(void)initializeLocationService{

_locationManager = [[CLLocationManager alloc] init];

// 设置代理

_locationManager.delegate = self;

// 设置定位精确度到米

_locationManager.desiredAccuracy = kCLLocationAccuracyBest;

// 设置过滤器为无

_locationManager.distanceFilter = kCLDistanceFilterNone;

// 开始定位

// 取得定位权限,有两个方法,取决于你的定位使用情况

// 一个是requestAlwaysAuthorization,一个是requestWhenInUseAuthorization

[_locationManager requestAlwaysAuthorization];//这句话ios8以上版本使用。

[_locationManager startUpdatingLocation];

}

(3)、实现协议中的方法-(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{

[ProgressHUD show:nil];

NSString * locaton = [NSString stringWithFormat:@"经度%lf纬度%lf",newLocation.coordinate.longitude,newLocation.coordinate.latitude];

NSLog(@"我的位置%@",locaton);

CLGeocoder * geocoder = [[CLGeocoder alloc] init];

[geocoder reverseGeocodeLocation:newLocation completionHandler:^(NSArray *array, NSError *error){

if (array.count > 0){

CLPlacemark *placemark = [array objectAtIndex:0];

//将获得的所有信息显示到label上

//获取城市

NSString *city = placemark.locality;

if (!city) {

//四大直辖市的城市信息无法通过locality获得,只能通过获取省份的方法来获得(如果city为空,则可知为直辖市)

city = placemark.administrativeArea;

}

NSLog(@"city%@",city);

}

else if (error == nil && [array count] == 0)

{

NSLog(@"No results were returned.");

}

else if (error != nil)

{

NSLog(@"An error occurred = %@", error);

}

}];

[manager stopUpdatingLocation];

}

相关文章

  • 原生手机定位教程

    1、首先导入CoreLocation.framework这个依赖库,并在相应的控制器里导入头文件import

  • 001-跨平台开发-MUI-认识MUI

    视频教程:点击这里 什么是MUI?MUI的定位是:最接近原生体验的移动App的UI框架。基于mui的定位,产生了m...

  • 苹果手机重置系统定位服务教程

    苹果手机重置系统定位服务教程 (1) 在设置里,点击隐私 (2) 在隐私里,点击定位服务 (3) 关闭定位服务,2...

  • 手机修改定位教程。

    1) 在软件关键搜索“爱思助手”→点击下载 2) 安装完毕之后下载其所有的载件 3) 打开爱思助手,进入界面,用手...

  • 关于网络地图(高德)定位的额额额。。。

    因为原生接口成功率很低,JS-API会优先调用精确IP定位服务,在IP定位失败的时候,尝试使用浏览器原生定位接口进...

  • iOS原生定位

    1、导入框架 2、添加头文件 3、声明和代理 4、初始化 5、开始定位 6、代理回调 注意事项: 1、用户隐私的保...

  • 想对即将大学毕业的孩子说……

    一、定位自己 1、正确看待原生家庭(原生家庭,是指自己出生的家庭)。 2、正确定位自己的“三观”(三观:人生观、价...

  • 手机定位

    参考链接:https://cnodejs.org/topic/564c0a27e4766d487f6fe38d 今...

  • 手机定位

    全球卫星定位(GPS):纯粹利用卫星发射的无线电信号进行定位,室外空旷地使用,初次冷启动定位时间较长(2-10分钟...

  • 手机定位

    1.前言 最近在做公司一个办公流程的软件,由于公司办公都是在钉钉上,所以大部分功能都是基于小程序平台开发的。后面,...

网友评论

      本文标题:原生手机定位教程

      本文链接:https://www.haomeiwen.com/subject/rqzurttx.html