安卓APP调用百度地图该怎么做? 如何在H5中调用百度地图APP和高德地图APP

\u5982\u4f55\u4f7f\u7528Android\u8c03\u7528\u767e\u5ea6\u5730\u56feAPI

1\uff09\u4e0b\u8f7d\u767e\u5ea6\u5730\u56fe\u79fb\u52a8\u7248API(Android)\u5f00\u53d1\u5305
\u8981\u5728Android\u5e94\u7528\u4e2d\u4f7f\u7528\u767e\u5ea6\u5730\u56feAPI\uff0c\u5c31\u9700\u8981\u5728\u5de5\u7a0b\u4e2d\u5f15\u7528\u767e\u5ea6\u5730\u56feAPI\u5f00\u53d1\u5305\uff0c\u8fd9\u4e2a\u5f00\u53d1\u5305\u5305\u542b\u4e24\u4e2a\u6587\u4ef6\uff1abaidumapapi.jar\u548clibBMapApiEngine.so\u3002
2\uff09\u7533\u8bf7API Key
\u548c\u4f7f\u7528Google map api\u4e00\u6837\uff0c\u5728\u4f7f\u7528\u767e\u5ea6\u5730\u56feAPI\u4e4b\u524d\u4e5f\u9700\u8981\u83b7\u53d6\u76f8\u5e94\u7684API Key\u3002\u767e\u5ea6\u5730\u56feAPI Key\u4e0e\u4f60\u7684\u767e\u5ea6\u8d26\u6237\u76f8\u5173\u8054\uff0c\u56e0\u6b64\u60a8\u5fc5\u987b\u5148\u6709\u767e\u5ea6\u5e10\u6237\uff0c\u624d\u80fd\u83b7\u5f97API Key\uff1b\u5e76\u4e14\uff0c\u8be5Key\u4e0e\u60a8\u5f15\u7528API\u7684\u7a0b\u5e8f\u540d\u79f0\u6709\u5173\u3002
\u767e\u5ea6API Key\u7684\u7533\u8bf7\u8981\u6bd4Google\u7684\u7b80\u5355\u591a\u4e86\uff0c\u5176\u5b9e\u53ea\u8981\u4f60\u6709\u767e\u5ea6\u5e10\u53f7\uff0c\u5e94\u8be5\u4e0d\u8d85\u8fc730\u79d2\u5c31\u80fd\u5b8c\u6210API Key\u7684\u7533\u8bf7\u3002
3\uff09\u521b\u5efa\u4e00\u4e2aAndroid\u5de5\u7a0b
\u8fd9\u91cc\u9700\u8981\u5f3a\u8c03\u4e00\u70b9\uff1a\u767e\u5ea6\u5730\u56fe\u79fb\u52a8\u7248api\u652f\u6301Android 1.5\u53ca\u4ee5\u4e0a\u7cfb\u7edf\uff0c\u56e0\u6b64\u6211\u4eec\u521b\u5efa\u7684\u5de5\u7a0b\u5e94\u57fa\u4e8eAndroid SDK 1.5\u53ca\u4ee5\u4e0a\u3002

\u770b\u5b98\u65b9\u6587\u6863\u554a\u4eb2
\u5177\u4f53\u4f8b\u5b50\u5982\u4e0b
\u5b89\u5353\uff0c\u767e\u5ea6\u9a7e\u8f66\u5bfc\u822a
\u5b89\u5353\uff0c\u9ad8\u5fb7\u9a7e\u8f66\u5bfc\u822a
ios\uff0c\u767e\u5ea6\u9a7e\u8f66\u5bfc\u822a
ios\uff0c\u9ad8\u5fb7\u9a7e\u8f66\u5bfc\u822a
\u5b89\u5353\u4e2d\uff0c\u53c2\u6570query\u548clocation\u4e8c\u9009\u4e00
\u5728\u79fb\u52a8\u7aef\u6d4f\u89c8\u5668\u662f\u8fd9\u6837\u4f7f\u7528\uff0c\u5982\u679c\u8981\u5728app\u4e2d\u4f7f\u7528\u662f\u9700\u8981\u5ba2\u6237\u7aef\u652f\u6301\u7684

本篇通过一个简单的示例一步步介绍如何在Android应用中使用百度地图api。
1)下载百度地图移动版API(Android)开发包
要在Android应用中使用百度地图API,就需要在工程中引用百度地图API开发包,这个开发包包含两个文件:baidumapapi.jar和libBMapApiEngine.so。下载地址:http://dev.baidu.com/wiki/static/imap/files/BaiduMapApi_Lib_Android_1.0.zip
2)申请API Key
和使用Google map api一样,在使用百度地图API之前也需要获取相应的API Key。百度地图API Key与你的百度账户相关联,因此您必须先有百度帐户,才能获得API Key;并且,该Key与您引用API的程序名称有关。
百度API Key的申请要比Google的简单多了,其实只要你有百度帐号,应该不超过30秒就能完成API Key的申请。申请地址:http://dev.baidu.com/wiki/static/imap/key/
3)创建一个Android工程
这里需要强调一点:百度地图移动版api支持Android 1.5及以上系统,因此我们创建的工程应基于Android SDK 1.5及以上。
工程创建完成后,将baidumapapi.jar和libBMapApiEngine.so分别拷贝到工程的根目录及libs/armeabi目录下,并在工程属性->Java Build Path->Libraries中选择“Add JARs”,选定baidumapapi.jar,这样就可以在应用中使用百度地图API了。

4)在布局文件中添加地图控件(res/layout/main.xml)

[xhtml] view plaincopy
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.baidu.mapapi.MapView android:id="@+id/map_View"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
/>
</LinearLayout>

5)创建Activity继承com.baidu.mapapi.MapActivity

[java] view plaincopy
package com.liufeng.baidumap;

import android.graphics.drawable.Drawable;
import android.os.Bundle;

import com.baidu.mapapi.BMapManager;
import com.baidu.mapapi.GeoPoint;
import com.baidu.mapapi.MapActivity;
import com.baidu.mapapi.MapController;
import com.baidu.mapapi.MapView;

public class MainActivity extends MapActivity {
private BMapManager mapManager;
private MapView mapView;
private MapController mapController;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

// 初始化MapActivity
mapManager = new BMapManager(getApplication());
// init方法的第一个参数需填入申请的API Key
mapManager.init("285B415EBAB2A92293E85502150ADA7F03C777C4", null);
super.initMapActivity(mapManager);

mapView = (MapView) findViewById(R.id.map_View);
// 设置地图模式为交通地图
mapView.setTraffic(true);
// 设置启用内置的缩放控件
mapView.setBuiltInZoomControls(true);

// 用给定的经纬度构造一个GeoPoint(纬度,经度)
GeoPoint point = new GeoPoint((int) (47.118440 * 1E6), (int) (87.493147 * 1E6));

// 创建标记maker
Drawable marker = this.getResources().getDrawable(R.drawable.iconmarka);
// 为maker定义位置和边界
marker.setBounds(0, 0, marker.getIntrinsicWidth(), marker.getIntrinsicHeight());

// 取得地图控制器对象,用于控制MapView
mapController = mapView.getController();
// 设置地图的中心
mapController.setCenter(point);
// 设置地图默认的缩放级别
mapController.setZoom(12);
}

@Override
protected boolean isRouteDisplayed() {
return false;
}

@Override
protected void onDestroy() {
if (mapManager != null) {
mapManager.destroy();
mapManager = null;
}
super.onDestroy();
}

@Override
protected void onPause() {
if (mapManager != null) {
mapManager.stop();
}
super.onPause();
}

@Override
protected void onResume() {
if (mapManager != null) {
mapManager.start();
}
super.onResume();
}
}

6)在AndroidManifest.xml中配置

[xhtml] view plaincopy
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.liufeng.baidumap"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".MainActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

<uses-sdk android:minSdkVersion="4" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
</manifest>

说明:上面的应用只是简单的展示了百度地图(交通地图),并将一个指定的点(根据经纬度确定)展示在手机屏幕的中心。当然,实际项目中涉及的map应用不会这么简单,百度地图API为我们提供了丰富的功能接口,有待我们一起去研究学习。

不难,只要获取到设备的经纬度,然后根据经纬度在百度地图上面画轨迹(行驶路线)。

  • 瀹夊崜APP璋冪敤鐧惧害鍦板浘璇ユ庝箞鍋?
    绛旓細1锛変笅杞鐧惧害鍦板浘绉诲姩鐗圓PI(Android)寮鍙戝寘 瑕佸湪Android搴旂敤涓娇鐢ㄧ櫨搴﹀湴鍥続PI锛屽氨闇瑕佸湪宸ョ▼涓紩鐢ㄧ櫨搴﹀湴鍥続PI寮鍙戝寘锛岃繖涓紑鍙戝寘鍖呭惈涓や釜鏂囦欢锛歜aidumapapi.jar鍜宭ibBMapApiEngine.so銆備笅杞藉湴鍧锛歨ttp://dev.baidu.com/wiki/static/imap/files/BaiduMapApi_Lib_Android_1.0.zip 2锛夌敵璇稟PI Key 鍜屼娇鐢...
  • 鎬庝箞璋冪敤鍦板浘鎬庝箞璋冪敤鍦板浘api
    绛旓細1銆瑕佽皟鐢ㄧ櫨搴﹀湴鍥API锛屽繀椤诲厛鐢宠涓涓閽ャ傝繘鍏ttp://lbsyun.baidu.com/,鏃剁敤鐧惧害璐﹀彿鐧诲綍锛岃繘鍏ョ敵璇峰瘑閽ラ〉闈(鍏蜂綋濉啓淇℃伅浠ョ綉绔欎负鍑)銆2.鐢宠鎴愬姛鍚庯紝鎮ㄥ皢鐪嬪埌鐢宠鐨勮缁嗕俊鎭紝鍖呮嫭鐢宠鍚嶇О鍜屽瘑閽ャ傚浜庝笉鍚岀増鏈殑key锛屽畼鏂圭粰鍑轰簡涓嶅悓鐨刱ey鐢ㄦ硶:(銆備负浜嗙粰鐢ㄦ埛鎻愪緵鏇村畨鍏ㄧ殑鏈嶅姟锛Android 鑷猄DK鐨剉...
  • uniapp(瀹夊崜绔)鐧惧害鍦板浘鐨勪娇鐢
    绛旓細1.棣栧厛鍘 鐧惧害鍦板浘寮鍙戣呭钩鍙扮敵璇 杩欓噷涓昏鏄瀹夊崜绔繘琛屾搷浣滐紙杩欓噷鐨勫寘鍚嶅拰涓嬭竟鍒涘缓鍩哄骇鐨勫寘鍚嶄竴鑷达級2.鐢宠鍚庡啀Hbuilder涓璵anifest.json 涓厤缃 3.鍒朵綔鍩哄骇 鍒囪锛Android鍖呭悕涓瀹氳鍜岀櫨搴﹀湴鍥惧紑鍙戝钩鍙颁腑鐨勪竴鑷 涓銆佸畾浣 1.鍒涘缓鑾峰彇瀹氫綅鐨勭被fun.js 2.涓荤被main.js涓紩鍏 3.闇瑕佺殑绫讳腑浣跨敤 杈撳嚭缁撴灉...
  • 濡備綍浣跨敤Android璋冪敤鐧惧害鍦板浘API
    绛旓細1銆佸湪android閰嶇疆娓呭崟鏂囦欢涓AndroidManifest.xml娣诲姞寮鍙戝瘑閽ュ拰鎵闇鏉冮檺 <application> </application> 鎵闇鏉冮檺 <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.USE_CREDENTIALS" /> <uses-permission android:name="android.per...
  • 濡備綍浣跨敤Android璋冪敤鐧惧害鍦板浘API
    绛旓細1銆璋冪敤鐧惧害鍦板浘API棣栧厛瑕佺敵璇蜂竴涓閽ワ紝杩涘叆http://lbsyun.baidu.com/鐢ㄧ櫨搴﹁处鍙风櫥闄嗭紝杩涘叆椤甸潰鐢宠绉橀挜锛堝叿浣撴墍濉俊鎭互缃戠珯涓哄噯锛2銆佺敵璇锋垚鍔熷悗锛岃嚜宸变細鐪嬪埌鐢宠鍒扮殑璇︽儏锛屽寘鎷簲鐢ㄥ悕绉扮閽ョ瓑 闅忕潃key鐗堟湰鐨勪笉鍚岋紝瀹樻柟鍦╧ey鏂归潰缁欏嚭涓嶅悓鐨勭敤娉曪細锛. 涓轰簡缁欑敤鎴锋彁渚涙洿瀹夊叏鐨勬湇鍔★紝Android SDK鑷獀2.1...
  • 鐧惧害鍦板浘濡備綍璋冪敤鐧惧害鍦板浘濡備綍璋冪敤鍖楁枟瀵艰埅
    绛旓細(7)绗笁鏂app璋冪敤鐧惧害鍦板浘 鐭ラ亾璇︾粏鍦板潃灏辨墦鐧惧害鍦板浘銆侷ntenti1=newIntent()锛//鍙嶅悜鍦板潃瑙f瀽锛//i1.setdata(uri.parse(baidumap://map/geocoder锛焞ocation=30.297328锛120.219705));i1.setdata(uri.parse(baidumap://map/geocoder锛焥rc=andr.Baidu.openapidemo startActivity(i1)锛涚煡閬撶粡绾害灏...
  • 鎬庝箞浣跨敤鐧惧害鍦板浘瀵艰埅,妯℃嫙瀵艰埅
    绛旓細鎵撳紑鎵嬫満涓婄殑鐧惧害鍦板浘APP锛岃繘鍏ュ埌鍦板浘涓荤晫闈紝鐐瑰嚮鍙充笅鏂圭殑璺嚎銆傞夋嫨浣犺閲囩敤鐨勫嚭琛屾柟寮忥紝姣斿姝ヨ锛岄┚杞︼紝鎵撹溅绛夈傝緭鍏ヤ綘鐨勫嚭鍙戝湴鍜岀洰鐨勫湴锛岀劧鍚庨夋嫨鍙充笂瑙掔殑鎼滅储銆傚湴鍥惧氨浼氫负浣犳帹鑽愬嚑鏉$嚎璺紝鏈夌殑鏄笉鎷ュ牭鐨勶紝鏈夌殑鏄矾绾挎渶杩戠殑锛屾湁鐨勬槸鏈蹇嵎鐨勯珮閫熺瓑銆備綘鍙互鐐归夋椂闂村氨鍙互鍒囨崲绾胯矾銆傞夋嫨浣犳兂瑕佺殑涓...
  • android鎬庝箞璋冪敤鐧惧害鍦板浘app杩涜瀵艰埅
    绛旓細鎵撳紑鎵嬫満GPS锛岃繘鍏鐧惧害鍦板浘锛屽湪涓嬫柟宸ュ叿鏍忕偣瀵艰埅锛岃緭鍏ョ洰鐨勫湴灏卞彲浠ヤ簡
  • 濡備綍璋冪敤鐧惧害鍦板浘鎺ュ彛濡備綍璋冪敤鐧惧害鍦板浘鎺ュ彛瀵艰埅
    绛旓細濡備綍璋冪敤鐧惧害鍦板浘API 绗竴姝:杩涘叆http://api.map.baidu.com/lbsapi/creatmap/,鐧惧害鍦板浘鍒朵綔缃戠珯锛屾悳绱㈠嚭浣犳兂瑕佸睍绀虹殑鍦扮偣銆傜浜屾:璁剧疆鍦板浘銆傛偍鍙互璁剧疆缃戠珯涓婃樉绀虹殑鍦板浘鐨勫搴﹀拰楂樺害锛屽叾浠栭夐」淇濇寔涓嶅彉銆傜涓夋:娣诲姞娉ㄩ噴銆傜偣鍑荤涓涓浘鏍囧悗锛屽湪鍙宠竟鎵惧埌鑷繁鐨勪綅缃紝鐐瑰嚮榧犳爣宸﹂敭瀹氫綅銆傛偍鍙互鏇存敼鏍囪...
  • (7)绗笁鏂app璋冪敤鐧惧害鍦板浘
    绛旓細鍦ㄧ煡閬撶粡绾害鐨勬儏鍐典笅璋冪敤鐧惧害鍦板浘(鎺ㄨ崘鐢ㄨ繖涓柟寮)Intent i1 =new Intent();// 鍙嶅悜鍦板潃瑙f瀽,            i1.setData(Uri.parse("baidumap://map/geocoder?location=30.297328,120.219705&src=andr.baidu.openAPIdemo"));      &...
  • 扩展阅读:百度地图上传店铺位置 ... 百度地图官网app下载 ... 新店位置怎么上定位 ... 百度地图官网入口 ... 百度地图导航下载安装 ... 百度地图怎么登录 ... 新公司地址怎么上地图 ... 百度地图大屏版v20下载 ... 百度地图注册店铺位置 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网