iOS原生地圖地理編碼與反地理編碼(詳解)

當(dāng)我們要在App實現(xiàn)功能:輸入地名,編碼為經(jīng)緯度,實現(xiàn)導(dǎo)航功能。

成都創(chuàng)新互聯(lián)不只是一家網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司;我們對營銷、技術(shù)、服務(wù)都有自己獨特見解,公司采取“創(chuàng)意+綜合+營銷”一體化的方式為您提供更專業(yè)的服務(wù)!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關(guān)注我們的成都網(wǎng)站制作、成都網(wǎng)站建設(shè)質(zhì)量和服務(wù)品質(zhì),在得到用戶滿意的同時,也能得到同行業(yè)的專業(yè)認可,能夠為行業(yè)創(chuàng)新發(fā)展助力。未來將繼續(xù)專注于技術(shù)創(chuàng)新,服務(wù)升級,滿足企業(yè)一站式全網(wǎng)整合營銷推廣需求,讓再小的品牌網(wǎng)站設(shè)計也能產(chǎn)生價值!

那么,我需要用到原生地圖中的地理編碼功能,而在Core Location中主要包含了定位、地理編碼(包括反編碼)功能。

在文件中導(dǎo)入

#import <CoreLocation/CoreLocation.h>

地理編碼:

/** 
 地理編碼 
 */
- (void)geocoder { 
   
  CLGeocoder *geocoder=[[CLGeocoder alloc]init]; 
   
  NSString *addressStr = @"廣東省深圳市寶安區(qū)";//位置信息 
   
  [geocoder geocodeAddressString:addressStr completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) { 
    if (error!=nil || placemarks.count==0) { 
      return ; 
    } 
    //創(chuàng)建placemark對象 
    CLPlacemark *placemark=[placemarks firstObject]; 
    //經(jīng)度 
    NSString *longitude =[NSString stringWithFormat:@"%f",placemark.location.coordinate.longitude]; 
    //緯度 
    NSString *latitude =[NSString stringWithFormat:@"%f",placemark.location.coordinate.latitude]; 
     
    NSLog(@"經(jīng)度:%@,緯度:%@",longitude,latitude); 
     
  }]; 
   
}

地理反編碼:

/** 
 地理反編碼 
 */
- (void)reverseGeocoder{ 
  //創(chuàng)建地理編碼對象 
  CLGeocoder *geocoder=[[CLGeocoder alloc]init]; 
   
  //經(jīng)度 
  NSString *longitude = @"113.23"; 
  //緯度 
  NSString *latitude = @"23.16"; 
   
   
  //創(chuàng)建位置 
  CLLocation *location=[[CLLocation alloc]initWithLatitude:[latitude floatValue] longitude:[longitude floatValue]]; 
   
   
  //反地理編碼 
  [geocoder reverseGeocodeLocation:location completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) { 
    //判斷是否有錯誤或者placemarks是否為空 
    if (error !=nil || placemarks.count==0) { 
      NSLog(@"%@",error); 
      return ; 
    } 
    for (CLPlacemark *placemark in placemarks) { 
      //詳細地址 
      NSString *addressStr = placemark.name; 
      NSLog(@"詳細地址1:%@",addressStr); 
      NSLog(@"詳細地址2:%@",placemark.addressDictionary); 
      NSLog(@"詳細地址3:%@",placemark.locality); 
    } 
     
  }]; 
}

以上這篇iOS 原生地圖地理編碼與反地理編碼(詳解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持創(chuàng)新互聯(lián)。

當(dāng)前標(biāo)題:iOS原生地圖地理編碼與反地理編碼(詳解)
URL標(biāo)題:http://muchs.cn/article14/gdsdde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、微信公眾號、品牌網(wǎng)站建設(shè)用戶體驗、微信小程序企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計