本篇文章給大家談?wù)劙俣鹊貓Dgis源代碼,以及百度地圖生成器獲取代碼后怎么使用對應(yīng)的知識點(diǎn),希望對各位有所幫助,不要忘了收藏本站喔。
目錄一覽:
- 1、下載了WEBGIS地圖,然后里面有一些下面圖片的代碼,小弟完全看不懂
- 2、如何同時(shí)連接ArcGIS與百度地圖Android SDK
- 3、如何提取百度地圖的搜索數(shù)據(jù)到gis?
- 4、html網(wǎng)站編碼語言 百度地圖
下載了WEBGIS地圖,然后里面有一些下面圖片的代碼,小弟完全看不懂
這不是生成文件,是官方已經(jīng)寫好的代碼,放到了這里面,你可以直接調(diào)用里面的 *** ,而不用自己寫太難的代碼,基于這知之上,你可以完成自己的開發(fā),這就是二次開發(fā)!希望對你有幫助!
如何同時(shí)連接ArcGIS與百度地圖Android SDK
兩個(gè)SDK都是將其API庫封裝成so動(dòng)態(tài)鏈接庫供上層應(yīng)用(Java)調(diào)用,但兩者在具體實(shí)現(xiàn)上存在差異,也是這個(gè)差異導(dǎo)致將兩個(gè)SDK集成到一個(gè)應(yīng)用中時(shí)容易產(chǎn)生強(qiáng)退的bug,這個(gè)問題也曾很大的困擾了我一天,特此分享給大家。
☆ 先看看百度地圖 for Android SDK的動(dòng)態(tài)庫調(diào)用 *** :
之一步:在工程里新建libs文件夾,將開發(fā)包里的baidumapapi_v2_1_2.jar拷貝到libs根目錄下,將libapp_BaiduMapApplib_v2_1_2.so和libvi_voslib.so 拷貝到libs\armeabi目錄下(官網(wǎng)demo里已有這三個(gè)文件,如果要集成到自己的工程里,就需要自己添加),拷貝完成后的工程目錄如下圖所示;
添加微信好友, 獲取更多信息
復(fù)制微信號
注:liblocSDK3.so和locSDK_3.1.jar為百度定位SDK所使用資源,開發(fā)者可根據(jù)實(shí)際需求自行添加。
第二步:在工程屬性-Java Build Path-Libraries中選擇“Add External JARs”,選定baidumapapi_v2_1_2.jar,確定后返回。
通過以上兩步操作后,您就可以正常使用百度地圖SDK為您提供的全部功能了。
☆ 再看看ArcGIS for Android SDK的動(dòng)態(tài)庫調(diào)用 ***
其是通過在Eclipse集成開發(fā)環(huán)境上安裝ArcGIS插件來實(shí)現(xiàn)的,具體如何安裝就不贅述了。當(dāng) ArcGIS開發(fā)插件安裝完成后,在新建工程的選項(xiàng)中就可以看到【ArcGIS Project for Android】和【ArcGIS Samples for Android】的菜單,ArcGIS Android API的開發(fā)環(huán)境就順利配置完成了。
然后你可以New -- Project --ArcGIS Project for Android來新建一個(gè)帶其動(dòng)態(tài)鏈接庫的Android應(yīng)用程序。例如創(chuàng)建一個(gè)test工程,創(chuàng)建成功后如下圖所示。本例采用最新的ArcGIS for Android SDK 10.1。
小結(jié):以上兩種 *** ,從用戶便捷性上來說,ArcGIS 更加“智能”一些,將動(dòng)態(tài)鏈接庫添加的工作,直接已經(jīng)集成到new project里面,對于初學(xué)者來說,可以完全忽略這些細(xì)節(jié)而直接進(jìn)入關(guān)鍵開發(fā)工作;百度地圖的SDK相對來說,更加靈活一些,給用戶更大的空間。
但也就是這兩種方式的差異導(dǎo)致了當(dāng)兩個(gè)SDK結(jié)合到一個(gè)程序里的時(shí)候就容易出錯(cuò)。細(xì)心的朋友應(yīng)該可以發(fā)現(xiàn)一個(gè)問題,百度地圖SDK里的動(dòng)態(tài)鏈接庫只有一個(gè)armeabi文件夾,但是ArcGIS SDK卻有兩個(gè)文件夾,armeabi和armeabi-v7a,其中均有一個(gè)libruntimecore_java.so庫文件。
這兩個(gè)文件夾是何用意呢?armeabi和armeabi-v7a是表示cpu的類型,不同的cpu的特性不一樣,armeabi就是針對普通的或舊的arm cpu,armeabi-v7a是針對有浮點(diǎn)運(yùn)算或高級擴(kuò)展功能的arm cpu。簡單來說,Android為了適應(yīng)五花八門各式各樣的智能終端硬件環(huán)境,采用了不同的配置對應(yīng)不同文件夾的調(diào)用模式,好比大家熟悉的不同屏幕dpi會(huì)調(diào)用不同的圖片文件夾,如下圖。
那么關(guān)鍵的來了,當(dāng)我們嚴(yán)格按照兩個(gè)SDK添加鏈接庫后,百度地圖三個(gè)so庫文件就存放在armeabi文件夾下,而armeabi-v7a文件夾下并沒有百度地圖相應(yīng)的so庫,但ArcGIS卻在兩個(gè)文件夾下都有相應(yīng)的so庫,這里不得不說,Esri作為GIS、地圖領(lǐng)域的世界領(lǐng)頭羊,考慮的還是比較細(xì)。
然后編譯程序時(shí),Eclipse會(huì)在兩個(gè)文件夾里搜索相應(yīng)的庫文件,而只會(huì)根據(jù)Android手機(jī)的具體情況拷貝相應(yīng)文件夾下的庫文件。當(dāng)今絕大多數(shù)的手機(jī)已經(jīng)具備了針對有浮點(diǎn)運(yùn)算或高級擴(kuò)展功能的arm cpu,所以在手機(jī)根目錄下/data/data/(program_name)/lib下只會(huì)拷貝armeabi-v7a文件夾下的庫文件,而此時(shí)并不會(huì)有百度地圖的so庫文件。從而會(huì)導(dǎo)致百度地圖SDK程序直接崩潰,并報(bào)出java.lang.ExceptionInInitializerError錯(cuò)誤。
明白了原理,解決辦法就十分簡單了,將armeabi文件夾下百度地圖的so庫文件拷貝到armeabi-v7a文件夾下,如下圖:
重新clean一下project,重新編譯后程序就可以正常調(diào)用百度地圖和ArcGIS兩個(gè)SDK庫了。
如何提取百度地圖的搜索數(shù)據(jù)到gis?
百度地圖API有相關(guān)的接口,不過要把大數(shù)據(jù)提取出來有些不現(xiàn)實(shí),因?yàn)榻涌谏嫌性L問次數(shù)的限制,可以嘗試一下寫一個(gè)提取程序,逐步提取數(shù)據(jù)
html網(wǎng)站編碼語言 百度地圖
你可以在百度地圖生成器中自動(dòng)生成你要的地圖代碼:
網(wǎng)頁鏈接
如果僅僅是想獲取某個(gè)地點(diǎn)的坐標(biāo),可以用百度坐標(biāo)拾取器:
網(wǎng)頁鏈接
關(guān)于百度地圖gis源代碼和百度地圖生成器獲取代碼后怎么使用的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。