百度地图
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(); }
相关文章推荐
- 最大公约数与最小公倍数
- Yii框架的session入库
- Wifi小车之 - STM32无线视频篇
- [JZOJ4654]彩色格子
- Linux vmstat命令实战详解
- JZOJ3453. 【NOIP2013中秋节模拟】连通块(connect)
- python学习——图形界面
- php验证码
- 树链剖分+线段树 CF 593D Happy Tree Party(快乐树聚会)
- 自己实现字符串操作函数strlen(),strcat(),strcpy(),strcmp()
- js鼠标事件中的clientX/clientY,screenX/screenY,pageX/pageY,offsetX/offsetY,layerX/layerY,x/y
- etcd相关资料
- Bzoj3531:[Sdoi2014]旅行:树链剖分+动态开点线段树
- Hdu 5720 Wool
- JZOJ.1758 过河
- 快速排序
- mysql LIMIT 子句用法及原理
- Hdu 5719 Arrange
- 大量Json Data传输导致网站挂起/冻结
- 如何建模服务