導航:首頁 > 操作系統 > android調用地圖

android調用地圖

發布時間:2025-01-01 22:27:31

android 鍦板浘寮鍙 闇瑕佸畨瑁呯櫨搴﹀湴鍥懼悧

鎴戜滑鍦ㄥ︿範瀹夊崜寮鍙戠殑鏃跺欙紝鍏朵腑鏈閲嶈佺殑涓涓鍔熻兘灝辨槸浣跨敤鐧懼害鍦板浘瀹炵幇瀹氫綅錛岃繖鏍風殑鍔熻兘宸茬粡鍦ㄥ悇瀹夊崜搴旂敤涓灞¤佷笉椴滐紝閭d箞鎴戜滑瑕佸備綍鎵嶈兘浣跨敤鐧懼害鍦板浘鍛錛熺櫨搴﹀湴鍥炬槸涓浠涔堝憿錛熸垜浠鏉ョ湅鏈鏂囷紝鏈鏂囦富瑕佽茶堪浠涔堜簨鐧懼害鍦板浘錛宎ndroid寮鍙戝備綍浣跨敤鐧懼害鍦板浘錛岃︾粏璇風湅涓嬫枃銆
鐧懼害鍦板浘 Android SDK鏄涓濂楀熀浜嶢ndroid 2.1錛坴1.3.5鍙婁互鍓嶇増鏈鏀鎸乤ndroid 1.5浠ヤ笂緋葷粺錛夊強浠ヤ笂鐗堟湰璁懼囩殑搴旂敤紼嬪簭鎺ュ彛銆傛偍鍙浠ヤ嬌鐢ㄨュ SDK寮鍙戦傜敤浜嶢ndroid緋葷粺縐誨姩璁懼囩殑鍦板浘搴旂敤錛岄氳繃璋冪敤鍦板浘SDK鎺ュ彛錛屾偍鍙浠ヨ交鏉捐塊棶鐧懼害鍦板浘鏈嶅姟鍜屾暟鎹錛屾瀯寤哄姛鑳戒赴瀵屻佷氦浜掓у己鐨勫湴鍥劇被搴旂敤紼嬪簭銆
1錛変笅杞界櫨搴﹀湴鍥劇Щ鍔ㄧ増API(Android)寮鍙戝寘
鐧懼害鍦板浘 Android SDK鏄涓濂楀熀浜嶢ndroid 2.1錛坴1.3.5鍙婁互鍓嶇増鏈鏀鎸乤ndroid 1.5浠ヤ笂緋葷粺錛夊強浠ヤ笂鐗堟湰璁懼囩殑搴旂敤紼嬪簭鎺ュ彛銆傛偍鍙浠ヤ嬌鐢ㄨュ SDK寮鍙戦傜敤浜嶢ndroid緋葷粺縐誨姩璁懼囩殑鍦板浘搴旂敤錛岄氳繃璋冪敤鍦板浘SDK鎺ュ彛錛屾偍鍙浠ヨ交鏉捐塊棶鐧懼害鍦板浘鏈嶅姟鍜屾暟鎹錛屾瀯寤哄姛鑳戒赴瀵屻佷氦浜掓у己鐨勫湴鍥劇被搴旂敤紼嬪簭銆傝佸湪Android搴旂敤涓浣跨敤鐧懼害鍦板浘API錛屽氨闇瑕佸湪宸ョ▼涓寮曠敤鐧懼害鍦板浘API寮鍙戝寘錛岃繖涓寮鍙戝寘鍖呭惈涓や釜鏂囦歡錛歜aimapapi.jar鍜宭ibBMapApiEngine.so銆備笅杞藉湴鍧錛http://developer..com/map/sdk-android.htm
2錛夌敵璇稟PI Key
鐧懼害鍦板浘Android SDK鎻愪緵鐨勬墍鏈夋湇鍔℃槸鍏嶈垂鐨勶紝鎺ュ彛浣跨敤鏃犳℃暟闄愬埗錛屼絾鏄鎴戜滑浣跨敤鐧懼害鍦板浘API涔嬪墠蹇呴』瑕佺敵璇風浉搴旂殑API Key錛岀劧鍚庢墠鍙浣跨敤鐧懼害鍦板浘Android SDK銆
3錛夌櫨搴﹀湴鍥懼姛鑳戒粙緇
鍦板浘灞曠ず錛氬寘鎷2D鍥俱佸崼鏄熷浘銆3D鍥懼湴鍥懼睍紺恆
鍦板浘鎿嶄綔錛氭彁渚涘鉤縐匯佺緝鏀俱佸弻鎸囨墜鍔挎搷浣溿佸簳鍥炬棆杞絳夊湴鍥劇浉鍏蟲搷浣溿
鑷瀹氫箟緇樺埗錛氭彁渚涜嚜瀹氫箟緇樺埗鐐廣佺嚎銆侀潰鍩烘湰鍑犱綍鍥懼艦鐨勫姛鑳姐
鐧懼害鍦板浘瀵艱埅錛氭彁渚涜皟璧風櫨搴﹀湴鍥続ndroid鐗堬紙v5.0鍙婁互涓婄増鏈錛夊艱埅鍔熻兘銆
鍦板浘鎼滅儲錛氭彁渚涙牴鎹鍏抽敭瀛楄繘琛岃寖鍥存緔銆佸煄甯傛緔㈠拰鍛ㄨ竟媯緔銆備笖鏀鎸丩BS浜戞緔㈢敤鎴瘋嚜鏈夋暟鎹銆
璇︽儏鏌ヨ錛氭彁渚涢愰ギ綾葷殑POI鐨勮︾粏淇℃伅鏌ョ湅錛圥lace璇︽儏錛夈
綰胯礬瑙勫垝錛氭彁渚涘叕浜ゃ侀┚杞﹀拰姝ヨ屼笁縐嶇被鍨嬶紝澶氱嶆柟妗堬紙涓嶅惈鍦伴搧銆佹椂闂翠紭鍏堛佹渶灝戞崲涔樸佹渶灝戞ヨ岋級鐨勭嚎璺瑙勫垝銆
鍦扮悊緙栫爜錛氭彁渚涘湴鍧淇℃伅涓庡潗鏍囦箣闂寸殑鐩鎬簰杞鎹銆
浣嶇疆鏍囨敞錛氭彁渚涗竴涓鎴栧氫釜POI浣嶇疆鏍囨敞錛屼笖鏀鎸佺敤鎴瘋嚜瀹氫箟鍥炬爣銆
瀹炴椂璺鍐碉細鎻愪緵鍩庡競瀹炴椂浜ら氳礬鍐典俊鎮鍥俱
紱葷嚎鍦板浘錛氭彁渚涚葷嚎鍦板浘鍔熻兘錛屽彲鑺傜渷鐢ㄦ埛嫻侀噺銆
瀹氫綅錛氶噰鐢℅PS銆乄IFI銆佸熀絝欍両P娣峰悎瀹氫綅妯″紡錛岃蜂嬌鐢ˋndroid瀹氫綅SDK鑾峰彇瀹氫綅淇℃伅錛屼嬌鐢ㄥ湴鍥維DK瀹氫綅鍥懼眰榪涜屼綅緗灞曠ず銆

② Android騫沖彴楂樺痙API緇忛獙錛氶暱鎸夊湴鍥捐幏鍙栦綅緗淇℃伅

Android寮鍙戣繃紼嬩腑,鏈夊緢澶氭墜鍔挎搷浣滈兘寰堣╀漢鍙堢埍鍙堟仺銆備竴鏂歸潰鍙浠ユ洿渚挎嵎鐨勪綋鐜版洿澶氬姛鑳,鎻愬崌搴旂敤鐨勪綋楠,涓鏂歸潰綣佸嶅氬彉鐨勬搷浣滆儗鍚庢湁鐫璁稿氬紑鍙戞妧宸у拰闅鵑樸傝繖閲屽垎浜涓涓闀挎寜鍦板浘鑾峰彇浣嶇疆淇℃伅鐨勬墜鍔褲 涓轟簡鏇存槑浜,鍏堜笂涓灞曠ず鏁堟灉:闀挎寜鍦板浘鏌愮偣鏄劇ず璇ョ偣鍦扮悊浣嶇疆淇℃伅鍔熻兘 閫氳繃鏋勯犱竴涓猯ocationSelectOverlay綾繪潵瀹氫箟璇ュ姛鑳,鍦ㄥ湴鍥句笂瀵歸暱鎸夋墜鍔胯繘琛岀洃鍚,涓鏃︽湁榪欎釜浜嬩歡鍙戠敓灝辮皟鐢╣etAddressFromServer()鏂規硶鏉ユ樉紺哄湴鍧淇℃伅銆 鍦ㄨュ伐紼嬩腑鍒嗗埆瀹氫箟4涓綾籰ongPressMap.java,locationSelectOverlay.java,popUpPanel.java,Constants.java longPressMap.java涓烘樉紺轟竴涓鍦板浘綾,閫氳繃瀹炰緥鍖栦竴涓猯ocationSelectOverlay綾誨疄鐜伴暱鎸夊湴鍥炬樉紺哄湴鐞嗕綅緗淇℃伅鍔熻兘浠g爜濡備笅: //longPressMap 綾葷戶鎵縈apActivity瀵筸apview璧勬簮榪涜岀$悊 public class longPressMap extends MapActivity { private MapView mMapView; locationSelectOverlay mSelectLay; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //浣跨敤setContentView鏂規硶璋冪敤R.layout.activity_regeocoder甯冨矓鏂囦歡,鏄劇ず鍦板浘 setContentView(R.layout.geocoder); //鑾峰彇鍦板浘瑙嗗浘鐨剗d,璧嬪肩粰mMapView mMapView = ((MapView) findViewById(R.id.geocode_MapView)); // 璁劇疆鍚鐢ㄥ唴緗鐨勭緝鏀炬帶浠 mMapView.setBuiltInZoomControls(true); //瀹炰緥鍖栦竴涓猯ocationSelectOverlay綾 mSelectLay = new locationSelectOverlay(this, mMapView, new popUpPanel(this, mMapView)); //灝嗚ュ姛鑳藉姞杞藉埌姝ゅ湴鍥句笂,鍚鐢ㄩ暱鎸夊湴鍥炬樉紺鴻ョ偣鍦板潃淇℃伅鐨勫姛鑳 mMapView.getOverlays().add(mSelectLay); } } 澶嶅埗浠g爜 locationSelectOverlay紺轟緥浠g爜濡備笅: //locationSelectOverlay綾葷戶鎵縊verlay鎺ュ彛,瀹炵幇OnGestureListener鎵嬪娍鐩戝惉 public class locationSelectOverlay extends Overlay implements OnGestureListener { public popUpPanel mTipPanel;  //澹版槑涓涓寮瑰嚭妗嗗硅薄 GeoPoint mSelectPoint;    //澹版槑涓涓鍦扮悊鍧愭爣鐐瑰硅薄 MapView mMapView;    //澹版槑涓涓鍦板浘瑙嗗浘瀵硅薄 Context mContext;     //媧誨姩瀵硅薄 TextView mTipText=null;   //澹版槑涓涓鏂囨湰瀵硅薄 private static String nearbystr=""; private GestureDetector gestureScanner; //澹版槑涓涓鎵嬪娍鐩戝惉瀵硅薄 privateGeocoder coder;   //澹版槑涓涓閫嗗湴鐞嗙紪鐮佸硅薄 private String addressName="";   //澹版槑涓涓鍦板潃鍚嶇О瀛楃︿覆 //闀挎寜鍦板浘鏌愮偣鑾峰彇淇℃伅鐨勬瀯閫犲嚱鏁般 public locationSelectOverlay(Activity context,MapView mapView,popUpPanel panel) { this.mContext=context; this.mMapView=mapView; this.mTipPanel=panel; gestureScanner = new GestureDetector(this); //澹版槑涓涓鎵嬪娍鐩戝惉瀵硅薄 coder = new Geocoder(context);   //澹版槑涓涓閫嗗湴鐞嗙紪鐮佸硅薄 } //鐢℉andler鍑芥暟澶勭悊浼犻掓潵鐨勫湴鍧淇℃伅,鏄劇ず鍦ㄦ枃鏈妗嗕腑 private Handler mGeocoderHandler = new Handler() { public void handleMessage(Message msg) { //濡傛灉鏈夊湴鍧淇℃伅鐨勬秷鎮鍙戦佽繃鏉,灝嗘枃鏈妗嗕腑璁劇疆涓鴻ュ湴鍧淇℃伅 if(msg.what == Constants.REOCODER_RESULT) { if(mTipText!=null) mTipText.setText(addressName); } //濡傛灉鏄劇ず閿欒,鍒欐枃鏈妗嗕腑璁劇疆鎶ラ敊淇℃伅 else if(msg.what == Constants.ERROR) { Toast.makeText(mContext, "鑾峰彇鍦板潃澶辮觸,璇烽噸璇", Toast.LENGTH_SHORT).show(); removeTipPanel(); } } }; //鏄劇ず寮瑰嚭紿楀彛 public boolean showTap(GeoPoint p) { View view = mTipPanel.getView(); mMapView.removeView(view); //甯冨矓鍙傛暟璁劇疆 MapView.LayoutParams geoLP = new MapView.LayoutParams( MapView.LayoutParams.WRAP_CONTENT, MapView.LayoutParams.WRAP_CONTENT, p, MapView.LayoutParams.BOTTOM_CENTER); //寮瑰嚭紿楀彛鐨勬枃鏈鏄劇ず mTipText = (TextView) view.findViewById(R.id.GeoName); mTipText.setText("姝e湪鍔犺澆鍦板潃..."); mTipText.setOnClickListener(new OnClickListener() { public void onClick(View v) { } }); //鍦ㄥ湴鍥捐嗗浘涓婃坊鍔犺ュ脊鍑虹獥鍙h嗗浘 mMapView.addView(view, geoLP); return false; } //浠庣粡綰搴﹀潗鏍囩偣鑾峰彇瀵瑰簲鐨勫湴鍧淇℃伅 publicvoid getAddressFromServer(final GeoPoint point,final Handler handler) { //澹版槑涓涓綰跨▼ new Thread(){ public void run() { try { // 閫嗗湴鐞嗙紪鐮乬etFromLocation()鍑芥暟鑾峰彇璇ョ偣瀵瑰簲鐨勫墠3涓鍦板潃淇℃伅 ListAddress address = coder.getFromLocation((double)point.getLatitudeE6()/1E6, (double)point.getLongitudeE6()/1E6, 3); if (address != null) { //鑾峰彇絎涓涓鍦板潃淇℃伅 Address addres = address.get(0); addressName = ""; if(addres.getAdminArea()!=null) addressName+=addres.getAdminArea(); if(addres.getSubLocality()!=null) addressName += addres.getSubLocality(); if(addres.getFeatureName()!=null) addressName += addres.getFeatureName(); addressName += "闄勮繎"; handler.sendMessage(Message .obtain(handler, Constants.REOCODER_RESULT)); } } catch (AMapException e) { // TODO Auto-generated catch block handler.sendMessage(Message .obtain(handler, Constants.ERROR)); } } }.start(); //綰跨▼鍚鍔 } //縐昏蛋寮瑰嚭紿楀彛 public void removeTipPanel() { View view = mTipPanel.getView(); mMapView.removeView(view); } //鑾峰彇鎵嬪娍鎿嶄綔 public boolean onTouchEvent(MotionEvent event, MapView mapView) { return gestureScanner.onTouchEvent(event); } @Override public boolean onDown(MotionEvent e) { // TODO Auto-generated method stub return false; } @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { // TODO Auto-generated method stub return false; } //闀挎寜鍦板浘,寮瑰嚭鎻愮ず妗,鏄劇ず璇ョ偣鍦板潃淇℃伅 @Override public void onLongPress(MotionEvent e) { // TODO Auto-generated method stub int x = (int)e.getX(); int y = (int)e.getY(); mSelectPoint = mMapView.getProjection().fromPixels(x, y); //璋冪敤鏄劇ず鎻愮ず妗嗗嚱鏁 showTap(mSelectPoint); //璋冪敤浠庣粡綰搴︾偣鑾峰彇鍦板潃淇℃伅鍑芥暟 getAddressFromServer(mSelectPoint,mGeocoderHandler); } @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { // TODO Auto-generated method stub return false; } 澶嶅埗浠g爜 pouUpPanel瀹氫箟浜嗗脊鍑虹獥鍙g被 public class popUpPanel { private boolean isVisible = false; private MapView mMapView; private View popup; public popUpPanel(Activity paramActivity, MapView paramMapView) { this.mMapView = paramMapView; ViewGroup localViewGroup = (ViewGroup)this.mMapView.getParent(); //璁劇疆寮瑰嚭鐨勮嗗浘鏄痠d涓篟.layout.activity_long_press_map鐨勮嗗浘 this.popup = paramActivity.getLayoutInflater().inflate(R.layout.activity_long_press_map, localViewGroup, false); 鈥 澶嶅埗浠g爜 Constants 瀹氫箟浜嗕紶閫掔殑甯擱噺瀵瑰簲鐨勫礆紝濡俻ublic static finalint REOCODER_RESULT=3000; 琛ㄧず閫嗗湴鐞嗙紪鐮佺粨鏋滃父閲忥紝public staticfinal int ERROR=1001; 琛ㄧず鍑虹幇閿欒甯擱噺銆

③ 怎麼在android百度地圖通過經緯度來定位並且顯示出地圖位置

可以參考如下內容:

使用Android自帶的LocationManager和Location獲取位置的時候,經常會有獲取的location為null的情況,並且操作起來也不是很方便,在這個Demo里我使用了網路地圖API中的定位SDK,可以一次性獲取當前位置經緯度以及詳細地址信息,還可以獲取周邊POI信息,同時可以設定位置通知點,當到達某一位置時,發出通知信息等方式來告知用戶。jar包下載以及官方文檔請參照:網路定位SDK,前提是需要注冊網路開發者賬號。
下面來看看定位的基本原理,目前,定位SDK可以通過GPS、基站、Wifi信號進行定位。基本定位流程如下圖所示,當應用程序向定位SDK發起定位請求時,定位SDK會根據當前的GPS、基站、Wifi信息生成相對應的定位依據。然後定位SDK會根據定位依據來進行定位。如果需要,定位SDK會向定位伺服器發送網路請求。定位伺服器會根據請求的定位依據推算出對應的坐標位置,然後根據用戶的定製信息,生成定位結果返回給定位SDK。

④ android 鎬庝箞鎵歸噺璋冪敤鐧懼害鍦板浘鐨勫湴鐞嗙紪鐮佸姛鑳

濡備綍鎵歸噺璋冪敤鐧懼害鍦板浘鐨勫湴鐞嗙紪鐮佸姛鑳斤紝浠ヤ笅鏄鍏蜂綋姝ラわ細1.鎵撳紑鐧懼害鍦板浘寮鏀懼鉤鍙幫紝娉ㄥ唽璐﹀彿錛屽苟鍒涘緩搴旂敤銆2.鍦ㄥ壋寤虹殑搴旂敤涓錛屽紑鍚鍦扮悊緙栫爜API鐨勬潈闄愩3.鍦ㄨ嚜宸辯殑Android宸ョ▼涓錛屽紩鍏ョ櫨搴﹀湴鍥維DK銆4.鍦ㄤ唬鐮佷腑榪涜岃皟鐢ㄥ湴鐞嗙紪鐮丄PI鐨勬搷浣滐紝鍙浠ヤ嬌鐢℉ttpURLConnection鎴栬匟ttpClient鍙戦丠TTP璇鋒眰銆傝鋒眰鐨刄RL濡備笅鎵紺猴細http://api.map..com/geocoder/v2/?address=鍦板潃u0026output=jsonu0026ak=浣犵殑AK鍏朵腑錛宎ddress涓鴻佽繘琛屽湴鐞嗙紪鐮佺殑鍦板潃錛沷utput涓鴻繑鍥炴牸寮忥紙json鎴杧ml錛夛紱ak涓轟綘鍒涘緩搴旂敤鏃剁敓鎴愮殑AK銆傚湪榪欎釜URL涓錛宎ddress鍙浠ユ槸鍗曚釜鍦板潃錛屼篃鍙浠ユ槸澶氫釜鍦板潃鐢ㄥ垎鍙烽殧寮鐨勭粍鍚堛備緥濡傦細http://api.map..com/geocoder/v2/?address=鍖椾含甯;涓婃搗甯俓u0026output=jsonu0026ak=浣犵殑AK榪欐牱灝卞彲浠ュ悓鏃跺瑰寳浜甯傚拰涓婃搗甯傝繘琛屽湴鐞嗙紪鐮佷簡銆5.灝嗚幏鍙栧埌鐨勭粨鏋滆繘琛岃В鏋愶紝鍙浠ヤ嬌鐢℅son鎴栬匜astJson絳夌涓夋柟JSON搴撹繘琛岃В鏋愩傞氳繃浠ヤ笂鐨勬ラわ紝灝卞彲浠ユ壒閲忚皟鐢ㄧ櫨搴﹀湴鍥劇殑鍦扮悊緙栫爜鍔熻兘浜嗐

⑤ android (uniapp)引入高德地圖,實時定位(精度)

在使用uniapp進行android開發時,定位功能可以通過兩種方式實現:一是直接連接手機進行測試,二是運行在自定義基座上。


1. 直接連接手機測試:無需特別申請高德地圖的key,代碼中也不需要引入,盡管如此,定位功能依然可以精確實現。這可能是因為uniapp的安卓集成版本自帶了高德地圖支持,uni.getlocation方法就能獲取定位。


2. 自定義基座測試則有所不同:必須在高德開放平台獲取對應的安卓key,這與小程序的key和ios的key是分開申請的。在manifest.json文件中配置是必要的,否則可能會出現簽名不一致的錯誤。


在定位精度上,uni.getlocation、plus.geolocation.watchPosition和小程序的amapPlugin.getRegeo方法在連接手機時表現相近,都非常精確。然而,當在自定義基座上測試時,如果未正確配置maps,可能會導致定位出現誤差,尤其是在使用小程序key和amaps-wx.js時,定位精度會有500米左右的偏差。


最終,定位問題的解決在於確保在manifest.json中正確配置了appid、key以及包名。只有這樣,無論是在連接手機還是自定義基座上,定位都能達到預期的精度。

⑥ 如何使用Android調用百度地圖API

1、調用網路地圖API首先要申請一個秘鑰,進入http://lbsyun..com/用網路賬號登陸,進入頁面申請秘鑰(具體所填信息以網站為准)

網路地圖擁有龐大的地圖相關功能,詳細內容請參照官網(http://lbsyun..com/index.php?title=androidsdk ) 中的開發指南。

⑦ 如何使用Android調用百度地圖API

一、申請密鑰
1、先用eclipse創建一個Android工程
2、在網路api官網上申請一個密鑰,鏈接:http://lbsyun..com/apiconsole/key

二、工程配置
1、將mapapi_vX_X_X.jar拷貝到工程libs目錄下,將libBaiMapSDK_vX_X_X.so拷貝到libs\armeabi
目錄下,拷貝完成後,如下所示:
註:liblocSDK3.so和locSDK_3.1.jar為網路定位SDK所使用資源,開發者可根據實際需求自行添加。

2、右鍵工程屬性,在Libraries中選擇「Add External JARs」,選擇mapapi_vX_X_X.jar,確定返回
配置好以上步驟,即可使用網路地圖了

三、顯示網路地圖
1、在android配置清單文件中AndroidManifest.xml添加開發密鑰和所需許可權
<application> <meta-data android:name="com..lbsapi.API_KEY" android:value="開發者 key" /> </application>
所需許可權
<uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.USE_CREDENTIALS" /> <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" /> <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.BROADCAST_STICKY" /> <uses-permission android:name="android.permission.WRITE_SETTINGS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 2、在xml布局中添加地圖控制項
<com..mapapi.map.MapView android:id="@+id/bmapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" />

?3、在應用程序創建時初始化,SDK引用的全局變數Context

注意:在SDK各功能組件使用之前都需要調用
SDKInitializer.initialize(getApplicationContext());,因此我們建議該方法放在Application的初始化方法中

public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); //在使用SDK各組件之前初始化context信息,傳入ApplicationContext SDKInitializer.initialize(getApplicationContext()); System.out.println("SDKInitializer一初始化"); } }
設置自定義的application為默認應用 <application android:name="com.bao.ah.MyApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" >

public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //在使用SDK各組件之前初始化context信息,傳入ApplicationContext //注意該方法要再setContentView方法之前實現 //SDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main); } }

4、網路地圖應和Activity生命周期綁定

public class MainActivity extends Activity { MapView mMapView = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //在使用SDK各組件之前初始化context信息,傳入ApplicationContext //注意該方法要再setContentView方法之前實現 //SDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main); //獲取地圖控制項引用 mMapView = (MapView) findViewById(R.id.bmapView); } @Override protected void onDestroy() { super.onDestroy(); //在activity執行onDestroy時執行mMapView.onDestroy(),實現地圖生命周期管理 mMapView.onDestroy(); } @Override protected void onResume() { super.onResume(); //在activity執行onResume時執行mMapView. onResume (),實現地圖生命周期管理 mMapView.onResume(); } @Override protected void onPause() { super.onPause(); //在activity執行onPause時執行mMapView. onPause (),實現地圖生命周期管理 mMapView.onPause(); } }

閱讀全文

與android調用地圖相關的資料

熱點內容
看電影解壓是真的嗎 瀏覽:991
紅警1源碼編譯 瀏覽:666
騰達路由器編程器固件下載 瀏覽:762
點單怎麼用app 瀏覽:179
led32R5500pdf 瀏覽:157
windows伺服器阿里雲 瀏覽:1002
編譯不通過的屬於可查 瀏覽:807
夢幻西遊手游伺服器繁忙怎麼解決 瀏覽:590
keylock鎖增加密碼 瀏覽:610
app瓜瓜龍怎麼樣 瀏覽:713
googlec編程風格指南 瀏覽:587
pkg文件無法反編譯 瀏覽:313
男爵領域伺服器ip地址 瀏覽:20
linux編譯頭文件命令 瀏覽:95
用水和氣球做一個解壓球 瀏覽:949
java類中定義對象 瀏覽:972
編譯結果與out文件不一致 瀏覽:15
倚天2命令 瀏覽:174
appstore退款被拒怎麼辦 瀏覽:705
命令執行漏洞java 瀏覽:659