① android如何获取地理位置
三种方式进行定位,获取用户位置,分别是基于基站定位, 网络定位,GPS定位。
1.基站定位(passive):这是基于网络基站进行定位的,定位的精确度在几十米到几千米不等,在城市中基站覆盖率比较高,推荐使用基站定位,如果是在郊区,基站相距较远,基站的覆盖没有城里好,定位的误差比较大。如果在郊区不推荐使用基站定位。
2.网络定位:wifi定位,网络定位
3.GPS定位:与卫星进行通信。手机中嵌入了GPS模块(精简版的A-GPS),通过A-GPS搜索卫星, 获取经纬度。使用GPS的弊端是:必须站在空旷的地方,头顶对着天空,如果云层厚了,也会受到一定的影响。精确度:10-50米
扩展知识:
使用Android是定位必备的权限:
< uses-permission android:name= " android.permission.ACCESS_FINE_LOCATION " /> //精确定位
<uses-permission android:name= "android.permission.ACCESS_MOCK_LOCATION" /> //模拟器
<uses-permission android:name= "android.permission.ACCESS_COARSE_LOCATION" /> //粗糙定位
//获取定位管理对象
LocationManager lm=(LocationManager)getSystemService(LOCATION_SERVICE);
String[] names=lm.getAllProviders();//获取所有的位置提供者,一般三种
Criteria criteria=new Criteria();//查询条件,如果设置了海拔,则定位方式只能是GPS;
criteria.setCostAllowed(true);//是否产生开销,比如流量费
String provider=lm.getBaseProvider(criteria,true)//获取最好的位置提供者,第二个参数为true,表示只获取那些被打开的位置提供者
lm.requestLocationUpdates(provier,0,0,new LocationListener(){});//获取位置。第二个参数表示每隔多少时间返回一次数据,第三个参数表示被定位的物体移动每次多少米返回一次数据。
private class MyLocationListener implements LocationListener {
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
@Override
public void onLocationChanged(Location location) {
System. out.println( "服务中位置监听发送了变化了" );
float accuracy = location.getAccuracy(); // 精确度
double altitude = location.getAltitude(); // 海拔
double latitude = location.getLatitude(); // 纬度
double longitude = location.getLongitude(); // 经度
String locationInfo = "jing:" + longitude + ",wei:" + latitude + ",haiba:" + altitude + ",jingque:" + accuracy;
Editor edit = sp.edit();
edit.putString( "location", locationInfo);
edit.commit();
}
} public void onProviderDisabled(String provider) {
}
② 手机如何查看已经连上wifi的DNS服务器地址
【以华为手机为例】详细操作步骤如下:
1、打开手机设置,如下图所示:
③ WiFi定位和蓝牙定位有什么区别
两种定位方法的精度、所需硬件、硬件成本等都不同。Wi-Fi定位需要的基础设备为 AP 设备,蓝牙则需要Beacon 设备。
Wi-Fi 蓝牙定位
(基于AP 设备)
蓝牙定位
(基于Beacon设备)
部署密度
间隔10~20米部署一个
一般间隔5~7米部署一个
室内定位精度
3~8米
1~5米
耗电
高,需要电源连接
低,一般电池供电,每1~2年需更换电池
设备单价
数百元
数十元
定位服务器
图聚提供定位引擎支持
定位无需服务器,在客户端即可完成定位数据计算
支持系统
Android 3.0 或更高版本;
iOS 7.0 或更高版本
Android 4.3 或更高版本;
iOS 7.0 后更高版本
支持标准
标准2.4G/5G频段
标准蓝牙4.0广播协议
目前图聚采用的有两种定位方法,分别为Wi-Fi定位和蓝牙定位。使用的是图聚自主研发的室内定位算法。
④ android 手机能虚拟定位吗有没有这样的应用
可以。模拟定位软件有很多,在应用市场搜模拟定位的关键词选取排名前几的都可以使用。