iOS開發(fā)之開啟定位

前言:手機定位功能每個APP都會用到,接下來我就為大家演示如何定位,不足之處還望指出。

第一步導入框架


第二步:我直接把我文件里的代碼給拷貝下來了我就不說了(文件繼承NSObject)

.h文件

#importtypedef void(^LoactionBlock)(NSString *lat, NSString *lon);

@interface DKLoactionManager : NSObject

//單利

+(instancetype)sharedManager;

-(void)getGPS:(LoactionBlock)block;

@end

.m文件

#import "DKLoactionManager.h"#import@interface DKLoactionManager ()@property(nonatomic,strong) CLLocationManager *locmanager;

@property(nonatomic,copy) LoactionBlock block;

@end

@implementation DKLoactionManager

//1.單利

+(instancetype)sharedManager{

static DKLoactionManager *_manager;

static dispatch_once_t onceToken;

dispatch_once(&onceToken, ^{

_manager = [[DKLoactionManager alloc]init];

});

return _manager;

}

//2.

-(instancetype)init{

self = [super init];

if (self) {

_locmanager = [[CLLocationManager alloc]init];

[_locmanager setDesiredAccuracy:kCLLocationAccuracyBest];//所需的精度設(shè)置為最好

_locmanager.distanceFilter = 100;//距離過濾

_locmanager.delegate = self;

if (![CLLocationManager locationServicesEnabled]) {

NSLog(@"開啟定位服務(wù)");

} else {

CLAuthorizationStatus status = [CLLocationManager authorizationStatus];//設(shè)置授權(quán)

if (status == kCLAuthorizationStatusNotDetermined) {//如果未確定授權(quán)狀態(tài)

[_locmanager requestWhenInUseAuthorization];//請求用戶授權(quán)

}

}

}

return? self;

}

//用戶愿意接受定位服務(wù)才會調(diào)用這個方法

- (void)locationManager:(CLLocationManager *)manager

didUpdateToLocation:(CLLocation *)newLocation

fromLocation:(CLLocation *)oldLocation{

CLLocationCoordinate2D coor = newLocation.coordinate;//coordinate坐標

NSLog(@"%@",@(coor.latitude));

NSLog(@"%@",@(coor.longitude));

}

-(void)getGPS:(LoactionBlock)block{

self.block = block;

[self.locmanager startUpdatingLocation];//開始定位位置

}

@end

第三步在info.plist文件里添加(有的朋友可能打不出來我在這里給大家寫出了,把這段代碼添加進去就行了:Privacy - Location When In Use Usage Description)


第四步:在APPdelegate文件里面調(diào)用一下(代碼如下:假設(shè)你使用的是我上面的代碼)

[[DKLoactionManager sharedManager] getGPS:^(NSString *lat, NSString *lon) {

}];

第五步:效果圖



尾筆:祝福大家身體健康,工作順利。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容