① 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(); } }