iOS開發—第三方百度地圖

(1)加入百度開發者計劃

  百度賬號——> 是 ——> 加入開發者

  無 ——> 申請賬號加入開發者計劃

  以個人或者公司名義註冊就OK了,很簡單。

  (2)下載iOS版本SDK

  http://developer.baidu.com/map/sdkiosdev-download.htm

  主要包含三個文件夾:

  a.離線參考文檔 —— BaiduMap_iOSSDK_v2.1.1_Docs

  b.靜態庫文件 —— BaiduMap_iOSSDK_v2.1.1_Lib

  c.百度地圖的Demo —— BaiduMap_iOSSDK_v2.1.1_Sample

  (3)依賴百度地圖

  第一部分:申請應用

  a.在線申請應用(三種方式,移動端、瀏覽器以及服務器,這裏我們選擇移動客戶端)

  注意“安全碼"的填寫應與我們創建工程的“Bundle Identifier”一致,如下圖所示:

  b.申請完成後可以得到“AK”(access key)

b.申請完成後可以得到“AK”(access key)

  第二部分:依賴百度地圖

  a.合併靜態庫文件

  正如,baidu官方所述,依賴百度地圖靜態庫的方式存在三種方式(http://developer.baidu.com/map/sdkiosdev-2.htm)

  本文采用baidu推薦的第二種方式,將模擬器和真機的靜態庫合併成一個.a的文件。

  打開終端,“cd”到“libs”目錄下(該文件是已下載好的靜態庫文件——“BaiduMap_iOSSDK_v2.1.1_Lib”),執行以下命令:

  lipo -create Release-iphoneos/libbaidumapapi.a Release-iphonesimulator/libbaidumapapi.a -output libbaidumapapi.a

  最終生成 一個“libbaidumapapi.a”,如下圖所示:

最後,導入頭文件(inc)、包文件(mapapi.bundle)以及靜態庫文件(libbadumapapi.a)

  b.添加依賴庫文件

  共包含5個系統的庫文件,CoreLocation.framework, SystemConfiguration.framework, Security.framework, OpenGLES.framework, QuartzCore.framework。

  注意,“security.framework”框架是百度地圖LBS開放平臺2.0.1版本後才需要添加。如下圖所示:

  第三部分:注意事項

  a.注意添加資源包“mapapi.bundle”,內含百度地圖的資源文件。

  b.由於百度的靜態包文件是由objective C++實現,因此,你的工程至少需要將一個.m文件的後綴修改爲.mm

  這樣編譯器將會編譯C++的源文件

  c.如果程序出現“-[__NSCFString stringFromMD5]: unrecognized selector sent to instance ”,在other linker flag中添加“-ObjC” 可以得到解決

  第四部分:編譯、運行

  a.引入“BMapKit.h”頭文件,編譯,查看是否出現鏈接錯誤

  b.授權,參數填寫“AK”

  (5)如何學習百度地圖API

  請查看“BaiduMap_iOSSDK_v2.1.1_Docs”離線文檔,如果你已經有使用蘋果官方地圖API方面的經驗,那麼使用baidu的地圖更會得心應手

  baidu地圖更接“地氣”

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章