android中使用LocationManager定位获取信息
2015-08-06 18:34
453 查看
在一些应用程序中,我们需要获取位置的信息。可以通过android系统的LocationManager获取。LocationManager可以通过GPS定位LocationManager.GPS_PROVIDER,也可以通过网络定位LocationManager.NETWORK_PROVIDER。在手机的设置中-->位置服务-->打开基于网络的位置服务和GPS。好了,上代码。
public class MainActivity extends Activity {
private TextView msg;
private LocationManager locationManager = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
msg = (TextView) findViewById(R.id.msg);
locationManager = (LocationManager) this
.getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
1000, 1, new LocationListener() {
@Override
public void onStatusChanged(String provider, int status,
Bundle extras) {
// TODO Auto-generated method stub
}
@Override
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
@Override
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
@Override
public void onLocationChanged(Location location) {// 设备位置发生改变的时候触发
// TODO Auto-generated method stub
msg.setText("用户位置发生改变,新的位置数据:\n" + "经度:"
+ location.getLongitude() + "\n" + "纬度:"
+ location.getLatitude() + "\n" + "数据精确度:"
+ location.getAccuracy() + "\n" + "时间:"
+ location.getTime() + "\n" + "速度:"
+ location.getSpeed() + "\n" + "方位:"
+ location.getBearing());
Log.e("mymap", location.toString());
}
});
}
}
虽然可以获取的位置信息,但位置有偏差。想要获取比较准确与更详细的位置信息,在当前市面上有百度地图的LBS、高德地图LBS等,可以获取地址,街道等。
public class MainActivity extends Activity {
private TextView msg;
private LocationManager locationManager = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
msg = (TextView) findViewById(R.id.msg);
locationManager = (LocationManager) this
.getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
1000, 1, new LocationListener() {
@Override
public void onStatusChanged(String provider, int status,
Bundle extras) {
// TODO Auto-generated method stub
}
@Override
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
@Override
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
@Override
public void onLocationChanged(Location location) {// 设备位置发生改变的时候触发
// TODO Auto-generated method stub
msg.setText("用户位置发生改变,新的位置数据:\n" + "经度:"
+ location.getLongitude() + "\n" + "纬度:"
+ location.getLatitude() + "\n" + "数据精确度:"
+ location.getAccuracy() + "\n" + "时间:"
+ location.getTime() + "\n" + "速度:"
+ location.getSpeed() + "\n" + "方位:"
+ location.getBearing());
Log.e("mymap", location.toString());
}
});
}
}
虽然可以获取的位置信息,但位置有偏差。想要获取比较准确与更详细的位置信息,在当前市面上有百度地图的LBS、高德地图LBS等,可以获取地址,街道等。
相关文章推荐
- android Log.isLoggable方法的使用
- Android笔记(三) 使得Activity之间可以跳转---Intent
- Android页面跳转的方法
- Android复习笔记(13)-Fragment的使用(1)
- 三种方法使android 手机执行 二进制程序
- Android实现水波纹外扩效果
- Android WebView加载本地CSS
- 【Android】五大布局
- 在线阅读android源码
- Android的RelativeLayout的view的layout_marginBottom不起作用
- AndroidStudio单元测试——instrumentation
- Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags()
- Android使用WindowManager在界面添加一个悬浮框
- Android基础动画
- android 自定义radiobutton的样式 实现自己想要的样子
- android Bitmap->BGR字节数组
- Study-android 的handler和message学习
- Android文件操作的存放位置和形式
- android 语音识别
- 浅析CompareAndSet(CAS)