Android进阶之利用百度地图定位获取当前城市
2015-11-07 09:03
1571 查看
1.导入百度地图sdk和定位sdk
2.需要用到的权限
3.在清单文件里要加入一个服务。
4.代码如下
2.需要用到的权限
<!-- 这个权限用于进行网络定位 --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 这个权限用于访问GPS定位 --> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 --> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- 获取运营商信息,用于支持提供运营商信息相关的接口 --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位 --> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <!-- 用于读取手机当前的状态 --> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 访问网络,网络定位需要上网 --> <uses-permission android:name="android.permission.INTERNET" /> <!-- SD卡读取权限,用户写入离线定位数据 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
3.在清单文件里要加入一个服务。
//<application>里面 <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" > </service>
4.代码如下
public class mainActivity extends Activity { private TextView mTv = null; public LocationClient mLocationClient = null; public MyLocationListenner myListener = new MyLocationListenner(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mLocationClient = new LocationClient(this); mLocationClient.registerLocationListener(myListener); mTv = (TextView) findViewById(R.id.textview); setLocationOption(); mLocationClient.start(); } public class MyLocationListenner implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { mTv.setText(location.getCity()); } @Override public void onReceivePoi(BDLocation arg0) { } } @Override public void onDestroy() { mLocationClient.stop(); super.onDestroy(); } //设置相关参数 private void setLocationOption() { LocationClientOption option = new LocationClientOption(); option.setOpenGps(true); //打开gps option.setServiceName("com.baidu.location.service_v2.9"); option.setPoiExtraInfo(true); option.setAddrType("all"); option.setPriority(LocationClientOption.NetWorkFirst); option.setPriority(LocationClientOption.GpsFirst); //gps option.setPoiNumber(10); option.disableCache(true); mLocationClient.setLocOption(option); } }
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories