LBS地圖定位

定位使用 " CoreLocation 框架
想要定位辽社,需要使用5個步驟

1.首先創(chuàng)建一個"強引用"的位置管理器CLLocationManager

@interface ViewController ()<CLLocationManagerDelegate>
@property (nonatomic, strong) CLLocationManager *locationManager;
@end

創(chuàng)建位置管理者對象及其賦值

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

iOS8之后新增用戶授權(quán) 注意點:必須要配置plist文件
配置plist文件新增
NSLocationWhenInUseUsageDescription 或 NSLocationAlwaysUsageDescription

始終使用用戶的位置 -->無論前臺還是后臺運行情況都能夠使用
當(dāng)使用期間定位 -->只有在前臺運行情況才可以定位

位置過濾 單位:米 100.1表示當(dāng)用戶位置更新了100.1米后調(diào)用對應(yīng)的代理方法
期望精度 單位:米 100 :表示系統(tǒng)默認將100米看做同一個范圍

if ([UIDevice currentDevice].systemVersion.floatValue >= 8.0) {
        [locationManager requestAlwaysAuthorization];
        [locationManager requestWhenInUseAuthorization];
    }
    locationManager.distanceFilter = 100.1;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;

iOS9新特性-->后臺定位-->allowsBackgroundLocationUpdates
>當(dāng)用戶授權(quán)為使用期間時亏娜,可以設(shè)置這個屬性為YES需了,在plist中添加"Required background modes" 在字典中添加值"App registers for location updates".

設(shè)置代理,開啟定位

    locationManager.delegate = self;
    [locationManager startUpdatingLocation];

實現(xiàn)代理方法
當(dāng)定位到用戶位置時更新
一直定位 耗電,所以有時候需要停止定位
Locations:裝著CLLocation對象的數(shù)組
一個CLLocation代表一個位置

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations
{
    [manager stopUpdatingLocation];
    NSLog(@"%@",locations);
}

根據(jù)維度獲取位置下面分別是上海的位置和北京的位置 // 單位:米
根據(jù)比較可以得出倆地之間的距離

    CLLocation *location = [[CLLocation alloc] initWithLatitude:30 longitude:120];
    CLLocation *location1 = [[CLLocation alloc] initWithLatitude:39 longitude:115];
    double distance = [location distanceFromLocation:location1];

地理編碼和飯地理編碼

創(chuàng)建幾個控件

@property (weak, nonatomic) IBOutlet UITextField *longitudeTF;
@property (weak, nonatomic) IBOutlet UITextField *latitudeTF;
@property (weak, nonatomic) IBOutlet UILabel *detailLabel;

創(chuàng)建對象

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

地理編碼

    [geocoder geocodeAddressString:self.addressTF.text completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
        // 防錯處理
        if (error) {
            NSLog(@"%@",error);
            return ;
        }
        // 提供一個列表供用戶選擇
        for (CLPlacemark *placemark in placemarks) {
            NSLog(@"name:%@   city:%@",placemark.name,placemark.locality);
            // 賦值
            // 緯度
            self.latitudeLabel.text = [NSString stringWithFormat:@"%f",placemark.location.coordinate.latitude];
            // 經(jīng)度
            self.longitudeLabel.text = [NSString stringWithFormat:@"%f",placemark.location.coordinate.longitude];
            // 詳細地址
            self.detailLabel.text = placemark.name;
        }
        
    }];

反地理編碼

    // 2.1創(chuàng)建位置
    CLLocation *location = [[CLLocation alloc] initWithLatitude:[self.latitudeTF.text doubleValue] longitude:[self.longitudeTF.text doubleValue]];
    // 2.2調(diào)用方法  -->向蘋果請求數(shù)據(jù)
    [geocoder reverseGeocodeLocation:location completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
        // 2.3防錯處理
        if (error) {
            NSLog(@"%@",error);
            return ;
        }
        // 2.4賦值 -->獲取地標(biāo)
        CLPlacemark *placemark = placemarks[0];
        self.detailLabel.text = placemark.name;
    }];
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末肴掷,一起剝皮案震驚了整個濱河市块蚌,隨后出現(xiàn)的幾起案子机蔗,更是在濱河造成了極大的恐慌蒲祈,老刑警劉巖,帶你破解...
    沈念sama閱讀 223,126評論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萝嘁,死亡現(xiàn)場離奇詭異梆掸,居然都是意外死亡,警方通過查閱死者的電腦和手機牙言,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評論 3 400
  • 文/潘曉璐 我一進店門酸钦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人咱枉,你說我怎么就攤上這事卑硫。” “怎么了蚕断?”我有些...
    開封第一講書人閱讀 169,941評論 0 366
  • 文/不壞的土叔 我叫張陵欢伏,是天一觀的道長。 經(jīng)常有香客問我亿乳,道長硝拧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,294評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮障陶,結(jié)果婚禮上滋恬,老公的妹妹穿的比我還像新娘。我一直安慰自己咸这,他們只是感情好夷恍,可當(dāng)我...
    茶點故事閱讀 69,295評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著媳维,像睡著了一般酿雪。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上侄刽,一...
    開封第一講書人閱讀 52,874評論 1 314
  • 那天指黎,我揣著相機與錄音,去河邊找鬼州丹。 笑死醋安,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的墓毒。 我是一名探鬼主播吓揪,決...
    沈念sama閱讀 41,285評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼所计!你這毒婦竟也來了柠辞?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,249評論 0 277
  • 序言:老撾萬榮一對情侶失蹤主胧,失蹤者是張志新(化名)和其女友劉穎叭首,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體踪栋,經(jīng)...
    沈念sama閱讀 46,760評論 1 321
  • 正文 獨居荒郊野嶺守林人離奇死亡焙格,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,840評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了夷都。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片眷唉。...
    茶點故事閱讀 40,973評論 1 354
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖囤官,靈堂內(nèi)的尸體忽然破棺而出厢破,到底是詐尸還是另有隱情,我是刑警寧澤治拿,帶...
    沈念sama閱讀 36,631評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站笆焰,受9級特大地震影響劫谅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,315評論 3 336
  • 文/蒙蒙 一捏检、第九天 我趴在偏房一處隱蔽的房頂上張望荞驴。 院中可真熱鬧,春花似錦贯城、人聲如沸熊楼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鲫骗。三九已至,卻和暖如春踩晶,著一層夾襖步出監(jiān)牢的瞬間执泰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評論 1 275
  • 我被黑心中介騙來泰國打工渡蜻, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留术吝,地道東北人。 一個月前我還...
    沈念sama閱讀 49,431評論 3 379
  • 正文 我出身青樓茸苇,卻偏偏與公主長得像排苍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子学密,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,982評論 2 361

推薦閱讀更多精彩內(nèi)容