百度地图(一)

一、获取百度授权

首先,注册成为一名百度开发者,http://developer.baidu.com/,右上角的LBS就是百度地图的链接

进入百度LBS后,我们需要申请一个api key,凭借这个我们就可以获取到百度地图的接口,点击右上角API控制台,进入http://lbsyun.baidu.com/apiconsole/key,就可以看到你创建的应用

这里写图片描述

如果是第一次,就点击创建应用,按照提示填写,其中数字签名的获取方式为:打开eclipse的preference,打开Android->Build,有一项是SHA1 fingerprint,后面的值就是数字签名了。包名可以在AndroidManifest.xml中复制package的值,其他的方法可以自行百度。创建完成后,百度就会给你一个api key,这就是你的应用跟百度联系的一把钥匙。

二、下载百度地图sdk

工欲善其事,必先利其器。要想使用百度提供的各种服务,我们就要下载百度提供的开发包,然后就可以调用里面的方法和类。下载地址http://developer.baidu.com/map/index.php?title=androidsdk/sdkandev-download,可以选择自定义下载或下载全部。下载完成后解压将libs中的文件导入到你的项目中。

三、开发前的配置

在正式开发之前,我们需要在AndroidManifest.xml中添加秘钥和所需权限

(1)在application中添加开发密钥

<application>  
    <meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="开发者 key" />  
</application>

(2)添加所需权限

<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.WAKE_LOCK"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS" />

四、Hello BaiduMap

接下来,就正式的进入开发阶段了,要让百度地图在你的手机中显示出来。

1.在布局xml文件中添加地图控件

 <com.baidu.mapapi.map.MapView  
            android:id="@+id/bmapview"  
            android:layout_width="match_parent"  
            android:layout_height="match_parent"  
            android:clickable="true" />  

2.在应用程序创建时初始化SDK引用的Context全局变量。

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

3.创建地图Activity,管理地图生命周期

public class MainActivity extends Activity {  
    MapView mMapView = null;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);

      SDKInitializer.initialize(getApplicationContext());  
        setContentView(R.layout.activity_main);  
        //获取地图控件引用  
        mMapView = (MapView) findViewById(R.id.bmapView);  
    }  
    @Override  
    protected void onDestroy() {  
        super.onDestroy();  
        mMapView.onDestroy();  
    }  
    @Override  
    protected void onResume() {  
        super.onResume();   
        mMapView.onResume();  
        }  
    @Override  
    protected void onPause() {  
        super.onPause();      
        mMapView.onPause();  
        }  
    }

完成以上步骤后,运行程序,就可以在手机中显示一张北京市地图。

五、基础地图功能

1.地图类型

百度地图Android SDK为您提供了两种类型的地图资源(普通矢量地图和卫星图),开发者可以利用BaiduMap中的mapType()方法来设置地图类型。核心代码如下:

mMapView = (MapView) findViewById(R.id.bmapView);  
mBaiduMap = mMapView.getMap();  
//普通地图  
mBaiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);  
//卫星地图  
mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);

2.实时交通图

mMapView = (MapView) findViewById(R.id.bmapView);  
mBaiduMap = mMapView.getMap();  
//开启交通图   
mBaiduMap.setTrafficEnabled(true);

3.百度城市热力图

mMapView = (MapView) findViewById(R.id.bmapView);  
mBaiduMap = mMapView.getMap();  
//开启交通图   
mBaiduMap.setBaiduHeatMapEnabled(true);

百度地图最新功能和示例可以到百度开发者中心学习:http://developer.baidu.com/map/index.php?title=androidsdk/guide/basicmap

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值