今天給各位分享gis加載百度地圖的知識,其中也會對百度地圖gis數據提取進行解釋,如果能碰巧解決你現在面臨的問題,別忘了關注本站,現在開始吧!
目錄一覽:
- 1、qgis加載百度地圖失敗
- 2、如何提取百度地圖的搜索數據到gis?
- 3、如何用gis實現百度地圖的展示實例?
- 4、用什么GIS系統能導入百度地圖或其它地圖
- 5、怎樣用arcgis打開百度地圖
- 6、如何同時連接ArcGIS與百度地圖Android SDK
qgis加載百度地圖失敗
百度地圖有攔截。
百度為了用戶體驗,在用戶使用地址組件之前不加載地圖。因此我們采用官網的例子異步加載百度地圖。
QGIS(原稱QuantumGIS)是一個自由軟件的桌面GIS軟件。它提供數據的顯示、編輯和分析功能。
如何提取百度地圖的搜索數據到gis?
百度地圖API有相關的接口,不過要把大數據提取出來有些不現實,因為接口上有訪問次數的限制,可以嘗試一下寫一個提取程序,逐步提取數據
添加微信好友, 獲取更多信息
復制微信號
如何用gis實現百度地圖的展示實例?
你如果要自己用Flex做的話,就要首先獲取百度地圖的瓦片服務的地址,要做路徑查詢的話還要獲取百度地圖路徑分析服務的地址!現在是比賽的季節,ESRI聯合天地圖開放了地圖服務接口,,你可以參考下,至于你說的那些什么標記,繪制都可以在Flex中用代碼實現
用什么GIS系統能導入百度地圖或其它地圖
百度地圖等電子地圖是將裁切好的地圖瓦片在 *** 中發布成地圖服務,GIS系統通常都可以調用網上的地圖服務進行地圖顯示的。
怎樣用arcgis打開百度地圖
使用ArcMap加載矢量或者柵格數據,配置地圖,并保存成mxd文檔,并發布到arcgisserver上。使用js或flex或silverlight開發客戶端,并放到web服務器上,在瀏覽器上打開即可看到地圖。
如何同時連接ArcGIS與百度地圖Android SDK
兩個SDK都是將其API庫封裝成so動態鏈接庫供上層應用(Java)調用,但兩者在具體實現上存在差異,也是這個差異導致將兩個SDK集成到一個應用中時容易產生強退的bug,這個問題也曾很大的困擾了我一天,特此分享給大家。
☆ 先看看百度地圖 for Android SDK的動態庫調用 *** :
之一步:在工程里新建libs文件夾,將開發包里的baidumapapi_v2_1_2.jar拷貝到libs根目錄下,將libapp_BaiduMapApplib_v2_1_2.so和libvi_voslib.so 拷貝到libs\armeabi目錄下(官網demo里已有這三個文件,如果要集成到自己的工程里,就需要自己添加),拷貝完成后的工程目錄如下圖所示;
注:liblocSDK3.so和locSDK_3.1.jar為百度定位SDK所使用資源,開發者可根據實際需求自行添加。
第二步:在工程屬性-Java Build Path-Libraries中選擇“Add External JARs”,選定baidumapapi_v2_1_2.jar,確定后返回。
通過以上兩步操作后,您就可以正常使用百度地圖SDK為您提供的全部功能了。
☆ 再看看ArcGIS for Android SDK的動態庫調用 ***
其是通過在Eclipse集成開發環境上安裝ArcGIS插件來實現的,具體如何安裝就不贅述了。當 ArcGIS開發插件安裝完成后,在新建工程的選項中就可以看到【ArcGIS Project for Android】和【ArcGIS Samples for Android】的菜單,ArcGIS Android API的開發環境就順利配置完成了。
然后你可以New -- Project --ArcGIS Project for Android來新建一個帶其動態鏈接庫的Android應用程序。例如創建一個test工程,創建成功后如下圖所示。本例采用最新的ArcGIS for Android SDK 10.1。
小結:以上兩種 *** ,從用戶便捷性上來說,ArcGIS 更加“智能”一些,將動態鏈接庫添加的工作,直接已經集成到new project里面,對于初學者來說,可以完全忽略這些細節而直接進入關鍵開發工作;百度地圖的SDK相對來說,更加靈活一些,給用戶更大的空間。
但也就是這兩種方式的差異導致了當兩個SDK結合到一個程序里的時候就容易出錯。細心的朋友應該可以發現一個問題,百度地圖SDK里的動態鏈接庫只有一個armeabi文件夾,但是ArcGIS SDK卻有兩個文件夾,armeabi和armeabi-v7a,其中均有一個libruntimecore_java.so庫文件。
這兩個文件夾是何用意呢?armeabi和armeabi-v7a是表示cpu的類型,不同的cpu的特性不一樣,armeabi就是針對普通的或舊的arm cpu,armeabi-v7a是針對有浮點運算或高級擴展功能的arm cpu。簡單來說,Android為了適應五花八門各式各樣的智能終端硬件環境,采用了不同的配置對應不同文件夾的調用模式,好比大家熟悉的不同屏幕dpi會調用不同的圖片文件夾,如下圖。
那么關鍵的來了,當我們嚴格按照兩個SDK添加鏈接庫后,百度地圖三個so庫文件就存放在armeabi文件夾下,而armeabi-v7a文件夾下并沒有百度地圖相應的so庫,但ArcGIS卻在兩個文件夾下都有相應的so庫,這里不得不說,Esri作為GIS、地圖領域的世界領頭羊,考慮的還是比較細。
然后編譯程序時,Eclipse會在兩個文件夾里搜索相應的庫文件,而只會根據Android手機的具體情況拷貝相應文件夾下的庫文件。當今絕大多數的手機已經具備了針對有浮點運算或高級擴展功能的arm cpu,所以在手機根目錄下/data/data/(program_name)/lib下只會拷貝armeabi-v7a文件夾下的庫文件,而此時并不會有百度地圖的so庫文件。從而會導致百度地圖SDK程序直接崩潰,并報出java.lang.ExceptionInInitializerError錯誤。
明白了原理,解決辦法就十分簡單了,將armeabi文件夾下百度地圖的so庫文件拷貝到armeabi-v7a文件夾下,如下圖:
重新clean一下project,重新編譯后程序就可以正常調用百度地圖和ArcGIS兩個SDK庫了。
gis加載百度地圖的介紹就聊到這里吧,感謝你花時間閱讀本站內容,更多關于百度地圖gis數據提取、gis加載百度地圖的信息別忘了在本站進行查找喔。