百度地圖androidapi
A. 如何使用Android調用百度地圖API
1、調用網路地圖API首先要申請一個秘鑰,進入http://lbsyun..com/用網路賬號登陸,進入頁面申請秘鑰(具體所填信息以網站為准)
網路地圖擁有龐大的地圖相關功能,詳細內容請參照官網(http://lbsyun..com/index.php?title=androidsdk ) 中的開發指南。
B. 如何使用Android調用百度地圖API
做開發的過程中,有時要使用到定位等功能,就可以使用網路地圖,而在使用前我們首先要去申請一個網路地圖的key才能使用網路地圖的功能。
1、首先,要擁有一個網路帳號。如果已有,可以直接登錄,沒有就要去注冊一個網路ID。
2、有了網路帳號就可以去網站申請key了,網路「網路地圖API「,點開第一條信息就可以進網路地圖API的官網。
3、進官網會顯示一個提示,選擇Android程序員可以進去了解下網路地圖,你如果和了解就可以直接關了。然後找到下面的申請密鑰的按鈕點進去。
4、在這里因為是展示Android網路API的應用,所以點擊創建應用,在窗口中選擇for mobile,應用名稱可以隨便設置。
5、而最重要的就是下面安全碼的填寫了,數字簽名可以通過打開Eclipse的首選項查看,而不用命令查看那麼麻煩。如圖箭頭所指就是sha1值。
6、然後復制在安全碼裡面,+;+包名,這里的包名要與你程序中的包名所一致。到這里基本就大功告成了,確定之後開始你的開發之路吧。
C. 如何使用Android調用百度地圖API
:首先到API,看你需要android開發的類型,可以選擇這4個:Android地圖SDKAndroid定位SDKAndroid導航SDKAndroid全景SDK;你看需要的是哪一個,點進去,然後會看到開發指南,第一步申請對應的key,然後API對應的demo,把lib都引進去,照著demo做,demo沒有的就查看對應組件的類參考,做一次就很容易了
D. 鐧懼害鍦板浘縐誨姩API鏀鎸佸摢浜涘鉤鍙幫紵
嬈㈣繋鏉ュ埌澶闃崇殑鐖辮綃囷紝鎴戜滑鑱氱劍浜庣櫨搴﹀湴鍥劇Щ鍔ˋPI錛屼竴嬈句笓涓虹Щ鍔ㄨ懼囨墦閫犵殑鍒涙柊鎶鏈鍔涢噺銆傚畠璺ㄨ秺iOS鍜孉ndroid涓ゅぇ騫沖彴錛屾棤緙濊繛鎺ヤ綘鐨勬暟瀛楃敓媧匯
鐧懼害錛屾悳緔㈠紩鎿庡法澶
璇炵敓浜1999騫寸呰胺鐨勫壋鏂扮伀鑺憋紝鍒涘嬩漢鏉庡濺瀹忓嚟鍊熷逛腑鏂囨悳緔㈠紩鎿庣殑媧炲療鍔涳紝浜2000騫村湪鍖椾含涓鍏蟲潙鍒涚珛浜嗙櫨搴︼紝涓涓姊︽兂涓庢妧鏈浜ょ粐鐨勫囪抗銆備粠鏈鍒濈殑鍗佷漢鍥㈤槦錛屽彂灞曞埌濡備粖瓚呰繃18000浜虹殑鍏ㄧ悆縐戞妧宸ㄥご錛岀櫨搴﹀凡紼沖眳涓鍥戒簰鑱旂綉鐨勪腑蹇冦
鍗撹秺鐨勭爺鍙戝姏閲
鐧懼害鐨勭戞妧蹇冭剰錛屾槸鐢辨暟鍗冨悕欏跺皷宸ョ▼甯堢粍鎴愮殑鍏ㄧ悆欏跺皷鍥㈤槦錛屼粬浠鎺屾彙鐫鎼滅儲寮曟搸棰嗗煙鐨勫皷絝縐戞妧錛屼嬌鐧懼害鎴愪負鍏ㄧ悆灝戞暟鍑犱釜鎺屾彙鏍稿績鎶鏈鐨勫浗瀹朵箣涓錛屼笌緹庡浗銆佷縿緗楁柉鍜岄煩鍥藉苟鑲╁墠琛屻
紺句細璐d換鐨勫疄璺佃
浣滀負鍥藉唴鐨勮屼笟棰嗗啗鑰咃紝鐧懼害鍧氬畧鈥滃譏鍚堜俊鎮楦挎矡錛屽叡浜鐭ヨ瘑紺句細鈥濈殑浣垮懡銆備粠鎺ㄥ嚭涓撲負鐗規畩緹や綋璁捐$殑鎼滅儲浜у搧錛屽埌鎺ㄥ姩涓鍥戒俊鎮鍖栬繘紼嬶紝鍑鍖栫綉緇滅幆澧冿紝鐧懼害濮嬬粓璧板湪鍏鐩婂拰紺句細璐d換鐨勫墠娌褲2011騫達紝鐧懼害鍩洪噾浼氭垚絝嬶紝鑷村姏浜庢暀鑲層佺幆淇濆拰鏁戠伨絳夐嗗煙錛屼互緋葷粺銆佽勮寖鐨勬柟寮忎紶閫掔埍涓庡叧鎬銆
鎬葷粨錛岀櫨搴﹀湴鍥劇Щ鍔ˋPI涓嶄粎鏄涓嬈懼疄鐢ㄥ伐鍏鳳紝鏇存槸鎵胯澆鐫鐧懼害瀵逛簬鏅烘収涓庣埍鐨勬壙璇恆傚畠鍦ㄦ垜浠鏃ュ父鐢熸椿涓鍙戞尌鐫涓嶅彲鎴栫己鐨勪綔鐢錛岃岀櫨搴︾殑縐戞妧鍒涙柊鍜屽叕鐩婄簿紲烇紝涔熶負鎴戜滑鎻忕粯鍑轟竴騫呰繛鎺ョ戞妧涓庝漢鏂囩殑鍔ㄤ漢鐢婚潰銆
E. 如何使用Android調用百度地圖API
1.先來看看java代碼,MainActivity.class參考代碼如下:
1 public class MainActivity extends MapActivity {
2 // 初始位置設置為西安
3 private double userLongitude = 34.341568 * 1E6;// 緯度
4 private double userLatitude = 108.94017499999995 * 1E6;// 經度
5 // 添加網路相關控制項
6 private MapView mapView;
7 private BMapManager bMapManager;// 載入地圖的引擎
8 // 網路地圖上的key值
9 private String keyString = "";
10 // 在網路地圖上添加一些控制項,例如放大、縮小
11 private MapController mapController;
12 private MKLocationManager mLocationManager;
13
14 @Override
15 public void onCreate(Bundle savedInstanceState) {
16 super.onCreate(savedInstanceState);
17 setContentView(R.layout.activity_main);
18 // 實例化控制項
19 mapView = (MapView) this.findViewById(R.id.bmapView);
20 bMapManager = new BMapManager(MainActivity.this);
21 // 必須要載入key
22 bMapManager.init(keyString, new MKGeneralListener() {
23 // key值不正確
24 @Override
25 public void onGetPermissionState(int arg0) {
26 if (arg0 == 300) {
27 Toast.makeText(MainActivity.this, R.string.key_error,Toast.LENGTH_LONG).show();
28 }
29 }
30 //網路出錯
31 @Override
32 public void onGetNetworkState(int arg0) {
33 Toast.makeText(MainActivity.this, R.string.net_error,Toast.LENGTH_LONG).show();
34 }
35 });
36 this.initMapActivity(bMapManager);
37 mapView.setBuiltInZoomControls(true);// 表示可以設置縮放功能
38 mapController = mapView.getController();
39 // 初始化Location模塊
40 mLocationManager = bMapManager.getLocationManager();
41 // 通過enableProvider和disableProvider方法,選擇定位的Provider
42 mLocationManager.enableProvider(MKLocationManager.MK_NETWORK_PROVIDER);
43 mLocationManager.disableProvider(MKLocationManager.MK_GPS_PROVIDER);
44 //返回手機位置
45 mLocationManager.requestLocationUpdates(locationListener);
46 mLocationManager.setNotifyInternal(5, 2);
47 // 添加定點陣圖層
48 MyLocationOverlay myLocationOverlay = new MyLocationOverlay(this,mapView);
49 myLocationOverlay.enableMyLocation(); // 啟用定位
50 myLocationOverlay.enableCompass(); // 啟用指南針
51 mapView.getOverlays().add(myLocationOverlay);
52 mapView.setTraffic(true);// 交通地圖
53 // mapView.setSatellite(true);// 衛星地圖
54 mapController.setZoom(15);// 設置縮放級別
55 mapView.invalidate();// 刷新地圖
56 }
57 //獲取經度緯度
58 private LocationListener locationListener = new LocationListener() {
59 @Override
60 public void onLocationChanged(Location location) {
61 if (location != null) {
62 userLatitude = location.getLatitude() * 1E6;
63 userLongitude = location.getLongitude() * 1E6;
64 GeoPoint mypoint = new GeoPoint((int)(userLatitude), (int)(userLongitude));
65 mapView.getController().animateTo(mypoint);
66 }
67 }
68 };
69 // 銷毀
70 @Override
71 protected void onDestroy() {
72 super.onDestroy();
73 if (bMapManager != null) {
74 bMapManager.destroy();
75 bMapManager = null;
76 }
77 }
78 // 停止
79 @Override
80 protected void onPause() {
81 super.onPause();
82 if (bMapManager != null) {
83 mLocationManager.removeUpdates(locationListener);
84 bMapManager.stop();
85 }
86 }
87 // 重啟
88 @Override
89 protected void onResume() {
90 super.onResume();
91 if (bMapManager != null) {
92 bMapManager.start();
93 }
94 }
95 //
96 @Override
97 protected boolean isRouteDisplayed() {
98 return false;
99 }
100
101
102 // Menu
103 // 當點擊Menu按鈕時,調用該方法
104 @Override
105 public boolean onCreateOptionsMenu(Menu menu) {
106 menu.add(0, 1, 1, R.string.exit).setIcon(
107 android.R.drawable.ic_menu_close_clear_cancel);
108 return super.onCreateOptionsMenu(menu);
109 }
110 @Override
111 public boolean onContextItemSelected(MenuItem item) { // 選中某個菜單項
112 if (item.getItemId() == 1) {
113 MainActivity.this.finish();
114 }
115 return super.onOptionsItemSelected(item);
116 }
117 // 返回鍵
118 @Override
119 public boolean onKeyDown(int keyCode, KeyEvent event) {
120 if (keyCode == KeyEvent.KEYCODE_BACK) {
121 finish();
122 }
123 return super.onKeyDown(keyCode, event);
124 }
125 }
126
2.布局文件,主要是添加顯示地圖的控制項,activity_mainmain.xml參考代碼如下:
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 xmlns:tools="http://schemas.android.com/tools"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent" >
5 <!-- 添加顯示網路地圖的控制項 -->
6 <com..mapapi.MapView
7 android:id="@+id/bmapView"
8 android:layout_width="fill_parent"
9 android:layout_height="fill_parent"
10 android:clickable="true"
11 tools:context=".MainActivity" />
12 </LinearLayout>
3.設置配置文件,AndroidManifest.xml參考代碼如下:
1 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2 package="yu.hong.map"
3 android:versionCode="1"
4 android:versionName="1.0" >
5 <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="15" />
6 <!--添加網路地圖開發授權 -->
7 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
8 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
9 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
10 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
11 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
12 <uses-permission android:name="android.permission.INTERNET" />
13 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
14 <!--添加對屏幕的支持 -->
15 <supports-screens
16 android:anyDensity="true"
17 android:largeScreens="true"
18 android:normalScreens="true"
19 android:resizeable="true"
20 android:smallScreens="true" />
21 <application
22 android:icon="@drawable/ic_maplauncher"
23 android:label="@string/app_name"
24 android:theme="@style/AppTheme" >
25 <activity
26 android:name=".MainActivity"
27 android:label="@string/title_activity_main" >
28 <intent-filter>
29 <action android:name="android.intent.action.MAIN" />
30 <category android:name="android.intent.category.LAUNCHER" />
31 </intent-filter>
32 </activity>
33 </application>
34 </manifest>
F. 安卓手機怎麼設置百度地圖api縮放比例
設置縮放的方法
mBaiMap.setMapStatus(MapStatusUpdateFactory.newMapStatus(new MapStatus.Builder().zoom(15).build()));
//設置縮放級別
或者是
float zoomLevel = Float.parseFloat(t.getText().toString());
MapStatusUpdate u = MapStatusUpdateFactory.zoomTo(zoomLevel);
mBaiMap.animateMapStatus(u);
以上是網路的示常式序BaiMapsApiDemo(在網路LBS開放平台-》android SDK有下載)中,MapControlDemo.java中的一段,用來設置地圖縮放比例的