ios開發中如何調用蘋果自帶地圖導航

前段時間一直在趕項目,在外包公司工作就是命苦,天天加班不說,工作都是和工期合同掛鉤的,稍微逾期就有可能被扣獎金,不談這些傷腦筋的事情了,讓我們說說iOS開發中如何調用蘋果手機自帶的地圖。

  學習如逆水行舟,不進則退。古人告訴我們要不斷的反思和總結,日思則日精,月思則月精,年思則年精。只有不斷的嘗試和總結,才能讓我們的工作和生活更加輕松愉快和美好。連著做了兩個大的商城外包項目,智慧城市,搜牧通,花費了近四個月的時間,終于在反復修改后完美收工。期間的困難自不必說,以后多多總結和溝通吧。百度地圖的使用之前已經發表了一篇文章,說的很詳細了,這里不再涉及,言歸正傳,我們說一下如何調用蘋果自帶的地圖

  第一步:導入地圖文件 #import <MapKit/MapKit.h>
  第二步:獲取當前位置和目的地的經緯度,然后打開地圖即可
  
  //獲取當前位置
MKMapItem *mylocation = [MKMapItem mapItemForCurrentLocation];

//當前經維度
float currentLatitude=mylocation.placemark.location.coordinate.latitude;
float currentLongitude=mylocation.placemark.location.coordinate.longitude;

CLLocationCoordinate2D coords1 = CLLocationCoordinate2DMake(currentLatitude,currentLongitude);

//目的地位置
coordinate.latitude=[[dataSource objectForKey:@"lat"] floatValue];
coordinate.longitude=[[dataSource objectForKey:@"lng"] floatValue];


CLLocationCoordinate2D coords2 = coordinate;

// ios6以下,調用google map
if (SYSTEM_VERSION_LESS_THAN(@"6.0"))
{
    NSString *urlString = [[NSString alloc] initWithFormat:@"http://maps.google.com/maps?saddr=%f,%f&daddr=%f,%f&dirfl=d", coords1.latitude,coords1.longitude,coords2.latitude,coords2.longitude];
    NSURL *aURL = [NSURL URLWithString:urlString];
    //打開網頁google地圖
    [[UIApplication sharedApplication] openURL:aURL];
}
else
// 直接調用ios自己帶的apple map
{
    //當前的位置
    MKMapItem *currentLocation = [MKMapItem mapItemForCurrentLocation];
    //起點
    //MKMapItem *currentLocation = [[MKMapItem alloc] initWithPlacemark:[[MKPlacemark alloc] initWithCoordinate:coords1 addressDictionary:nil]];
    //目的地的位置
    MKMapItem *toLocation = [[MKMapItem alloc] initWithPlacemark:[[MKPlacemark alloc] initWithCoordinate:coords2 addressDictionary:nil]];
    
    toLocation.name = @"目的地";
    NSString *myname=[dataSource objectForKey:@"name"];
    if (![XtomFunction xfunc_check_strEmpty:myname])
    {
        toLocation.name =myname;
    }
    
    NSArray *items = [NSArray arrayWithObjects:currentLocation, toLocation, nil];
    NSDictionary *options = @{ MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving, MKLaunchOptionsMapTypeKey: [NSNumber numberWithInteger:MKMapTypeStandard], MKLaunchOptionsShowsTrafficKey:@YES };
    //打開蘋果自身地圖應用,并呈現特定的item
    [MKMapItem openMapsWithItems:items launchOptions:options];
}

通過這兩步就可以輕松的開啟蘋果自帶地圖導航,感覺真是挺不錯的,唯一的缺點是開啟地圖獲取路線信息耗費的手機流量比較大,最好在wifi條件下調用。如果不是必須,盡量還是用高德或者百度自帶的地圖就好。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 做的項目里面有見面功能 所以就需要有導航 導航兩種實現方式 (集成第三方SDK、URL跳轉第三方應用) 項目要求實...
    放肆的灑脫閱讀 7,232評論 11 13
  • http://www.cnblogs.com/kenshincui/p/4125570.html 摘要: 現在很多...
    大崔老師閱讀 3,319評論 1 2
  • 第一天培訓結束了,殷老師的授課非常精彩,讓我再次受益非淺。又讓我接觸到了新的營銷知識,明天就要上戰場了,心中雖然有...
    fed40c731379閱讀 141評論 0 0
  • 與青春邂逅的那個夜晚, 漫天的星星似乎色彩斑斕, 消失的夜鶯突然開始歌唱, 一切都是那么美好,自然。 恰好,正是春...
    二井共先生閱讀 380評論 0 3
  • 通常,我們在教學生解析小說時,都會告訴他們按照“環境、人物、情節”這三個要素來解析,一如我們讓學生按照“時間、地點...
    曾晨風閱讀 466評論 1 1