您的位置:首页 > 其它

百度地图

2016-07-18 08:12 211 查看
win+r
 

cd C:\Users\lenovo\.android
后加
keytool -list -keystore debug.keystore

获取 证书指纹

然后登陆  http://lbsyun.baidu.com/  进行创建应用 获取key

权限

   <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" />

    <!-- 这个权限用于进行网络定位-->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission> <!-- 这个权限用于访问GPS定位-->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> <!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位-->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> <!-- 获取运营商信息,用于支持提供运营商信息相关的接口-->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission> <!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> <!-- 用于读取手机当前的状态-->
    <uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission> <!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据-->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> <!-- 访问网络,网络定位需要上网-->
    <uses-permission android:name="android.permission.INTERNET" /> <!-- SD卡读取权限,用户写入离线定位数据-->
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>

 <service
            android:name="com.baidu.location.f"
            android:enabled="true"
            android:process=":remote">

        </service>
        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="ZPTkqSUh9F2Wu5WeG4QWhP6AuCUfnx9K" />

//xml中
<com.baidu.mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" />


 //定义变量

MapView mMapView = null;private BaiduMap mBaiduMap;private BitmapDescriptor bitmap;private String address = "";public LocationClient mLocationClient = null;public MyLocationListenner myListener = new MyLocationListenner();private MyLocationConfiguration.LocationMode mCurrentMode;BitmapDescriptor mCurrentMarker;boolean isFirstLoc = true; // 是否首次定位//oncreate方法中
//在使用SDK各组件之前初始化context信息,传入ApplicationContext
// 注意该方法要再setContentView方法之前实现

SDKInitializer.initialize(getApplicationContext());

 
//获取地图控件引用
mMapView = (MapView) findViewById(R.id.bmapView);
//获取地图mBaiduMap = mMapView.getMap();mCurrentMode = MyLocationConfiguration.LocationMode.NORMAL;mBaiduMap .setMyLocationConfigeration(new MyLocationConfiguration( mCurrentMode, true, mCurrentMarker));// 开启定位图层mBaiduMap.setMyLocationEnabled(true);// 定位初始化mLocationClient = new LocationClient(this);mLocationClient.registerLocationListener(myListener);LocationClientOption option = new LocationClientOption();option.setOpenGps(true); // 打开gpsoption.setCoorType("bd09ll"); // 设置坐标类型option.setScanSpan(1000);mLocationClient.setLocOption(option);mLocationClient.start();

/**
* 定位SDK监听函数
*/
public class MyLocationListenner implements BDLocationListener {

@Override
public void onReceiveLocation(BDLocation location) {
// map view 销毁后不在处理新接收的位置
if (location == null || mMapView == null) {
return;
}
MyLocationData locData = new MyLocationData.Builder()
.accuracy(location.getRadius())
// 此处设置开发者获取到的方向信息,顺时针0-360
.direction(100).latitude(location.getLatitude())
.longitude(location.getLongitude()).build();
mBaiduMap.setMyLocationData(locData);
if (isFirstLoc) {
isFirstLoc = false;
LatLng ll = new LatLng(location.getLatitude(),
location.getLongitude());
MapStatus.Builder builder = new MapStatus.Builder();
builder.target(ll).zoom(18.0f);
mBaiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
}
}

public void onReceivePoi(BDLocation poiLocation) {
}
}

@Override
protected void onResume() {
super.onResume();
mMapView.onResume();
}

@Override
protected void onDestroy() {
super.onDestroy();
mMapView.onDestroy();
}

@Override
protected void onPause() {
super.onPause();
mMapView.onPause();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: