首页 技术 正文
技术 2022年11月23日
0 收藏 537 点赞 4,118 浏览 1771 个字

//导入库

#import <CoreLocation/CoreLocation.h>

//注意:

//需要在 info.plist 中导入前两个字段

//NSLocationAlwaysUsageDescription

//NSLocationWhenInUseUsageDescription

@interface ViewController ()<CLLocationManagerDelegate>

@property (nonatomic,strong)CLLocationManager *locationManager;

@end

@implementation ViewController

– (void)viewDidLoad {

[super viewDidLoad];

//初始化locationManger管理器对象

CLLocationManager *locationManager=[[CLLocationManager alloc]init];

self.locationManager=locationManager;

//判断当前设备定位服务是否打开

if (![CLLocationManager locationServicesEnabled]) {

NSLog(@”设备尚未打开定位服务”);

}

//判断当前设备版本大于iOS8以后的话执行里面的方法

if ([UIDevice currentDevice].systemVersion.floatValue >=8.0) {

//持续授权

[locationManager requestAlwaysAuthorization];

//当用户使用的时候授权

[locationManager requestWhenInUseAuthorization];

}

//或者使用这种方式,判断是否存在这个方法,如果存在就执行,没有的话就忽略

//if([locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]){

//   [locationManager requestWhenInUseAuthorization];

//}

//设置代理

locationManager.delegate=self;

//设置定位的精度

locationManager.desiredAccuracy=kCLLocationAccuracyBest;

//设置定位的频率,这里我们设置精度为10,也就是10米定位一次

CLLocationDistance distance=10;

//给精度赋值

locationManager.distanceFilter=distance;

//开始启动定位

[locationManager startUpdatingLocation];

}

//当位置发生改变的时候调用(上面我们设置的是10米,也就是当位置发生>10米的时候该代理方法就会调用)

– (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations{

//取出第一个位置

CLLocation *location=[locations firstObject];

NSLog(@”%@”,location.timestamp);

//位置坐标

CLLocationCoordinate2D coordinate=location.coordinate;

NSLog(@”您的当前位置:经度:%f,纬度:%f,海拔:%f,航向:%f,速度:%f”,coordinate.longitude,coordinate.latitude,location.altitude,location.course,location.speed);

//如果不需要实时定位,使用完即使关闭定位服务

//[_locationManager stopUpdatingLocation];

}

– (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}

@end

微信扫一扫

支付宝扫一扫

本文网址:https://www.zhankr.net/141164.html

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:877 阅读:6,189
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:806 阅读:4,041
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:566 阅读:4,841
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:732 阅读:4,779
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:5,860
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:3,559
助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:8:00-16:00

客服电话

400-888-8888

客服邮箱

ceotheme@ceo.com

扫描二维码

关注微信公众号

扫描二维码

手机访问本站