首页 > 代码库 > 集成百度地图API实现定位

集成百度地图API实现定位

一.百度地图API获取定位

AndroidManifest.xml必须配置:

定位服务

<service 

            android:name="com.baidu.location.f"

            android:enabled="true"

            android:process=":remote"

            android:exported="false">

            <intent-filter >

                <action android:name="com.baidu.location.service"

                    android:exported="false"/>

            </intent-filter>

        </service>

Key配置

<!-- 用于配置key -->

        <meta-data

            android:name="com.baidu.lbsapi.API_KEY"

            android:value="Kn1xqiWftDyndXhMqLTG2k1G" />

AndroidManifest.xml

 

获取地理位置--1.获得地理编码---2通过地理编码获得地理位置名称

初始化地图

// 初始化百度地图

bMapLocation = new GetMyLocation(MainClient.this);

bMapLocation.initGeoCode();

定位初始化

//定位初始化

    mLocClient=new LocationClient(context.getApplicationContext());

    locData = new LocationData();

    mLocClient.registerLocationListener(myListener);

    LocationClientOption option = new LocationClientOption();

    option.setOpenGps(true);//打开gps

    option.setCoorType("bd09ll");//设置坐标类型

    option.setScanSpan(10000);

    mLocClient.setLocOption(option);

    mLocClient.start();

通过地理编码获得地区名称

mSearch = new MKSearch();

 mSearch.init(mapManagernew MKSearchListener() {

 

public void onGetAddrResult(MKAddrInfo res, int error) {

if (error != 0) {

String str = String.format("错误号:%d", error);

Toast.makeText(GetMyLocation.context,str,

                    Toast.LENGTH_LONG).show();

return;

}

if (res.type == MKAddrInfo.MK_REVERSEGEOCODE){

//反地理编码:通过坐标点检索详细地址及周边poi

localname = res.strAddr;

}

}

          。 。 。 。 。 。