1. 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) {
}
2. 安卓编程怎么获取真实地理位置不被虚拟软件欺骗
端口不一样 微信的端口被用滥了 欺骗好做 其他小众软件端口不一样 没法欺骗
3. android开发当中,如何获得当前地理位置并显示到第二个页面当中 第一个页面放个提交按钮,点击
使用网络地图的SDK或者谷歌的SDK,网络地图开发者平台中有定位方法,在点击按钮之后调用定位方法并传递到第二个页面,或者在第二个页面中做持续定位,详细方法参见网络地图开发者平台。
4. android百度地图怎么查看指定地点的经纬度
5. android 定位地理位置
定位技术有两种,一种是基于GPS的定位,一种是基于移动运营网的基站的定位。基于GPS的定位方式是利用手机上的GPS定位模块将自己的位置信号发送到定位后台来实现手机定位的。基站定位则是利用基站对手机的距离的测算距离来确定手机位置的。后者不需要手机具有GPS定位能力。
目前,一般的定位软件所使用的都是GPS定位和基站定位相结合。基站定位是通过电信移动运营商的网络(如GSM网)获取移动终端用户的位置信息(经纬度坐标)。GPS定位使用卫星,比较费电,精确,但在室内无法定位。基站定位的精度较低,但是可以在室内定位。基站定位的精度很大程度依赖于基站的分布及覆盖范围的大小,有时误差会超过一公里。
手机定位应该根据用户服务需求的不同提供不同的精度服务,并可以提供给用户选择精度的权利。例如美国FCC推出的定位精度在50米以内的概率为67%,定位精度在150米以内的概率为95%。定位精度一方面与采用的定位技术有关,另外还要取决于提供业务的外部环境,包括无线电传播环境、基站的密度和地理位置、以及定位所用设备等。
基站定位的大致原理为:移动电话测量不同基站的下行导频信号,得到不同基站下行导频的TOA(Time of Arrival,到达时刻)或TDOA(Time Difference of Arrival,到达时间差),根据该测量结果并结合基站的坐标,一般采用三角公式估计算法,就能够计算出移动电话的位置。实际的位置估计算法需要考虑多基站(3个或3个以上)定位的情况,因此算法要复杂很多。一般而言,移动台测量的基站数目越多,测量精度越高,定位性能改善越明显。
还有,你在使用手机网络地图等软件的时候,在不打开网络和GPS的情况下,实际上也能实现定位。但是你可能看不出来,因为在你没有打开网络的时候,地图页面不会加载,看到的只是全屏的网格。但你会看到进入时的点位置有一个明显的跳动过程,这是该软件设置的初始位置向你当前位置跳转。你也可以先打开网络,实用软件加载一遍地图,如其存在你的缓存中,这是在关闭网络的情况下就会显示你的位置。
资料来源:http://ke..com/link?url=UCgPUX7gVVa08-G4Ss-e4N52vlGBg8jrRdytEW7YP_
6. 安卓手机软件为什么要获取地理位置
这种获取地理位置信息的做法,不但是安卓系统,苹果的iOS、诺基亚的塞班等都有这种做法,据目前比较可信的说法就是:
软件开发商可以将这些信息加以整理,可以提供该一些需要的企业,例如餐饮企业的门店布局就需要这种信息,可以更合理的进行门店的布局;
一些隐私调查者也需要这种信息;
还有就是作为一种行为调查等需要。
只要有可以挣钱的途径,一些商家多会加以利用。
7. 关于android webview里HTML5的地理位置定位,在别的浏览器中打开可以定位,在我自己的webview却不能
我也遇到了同样的问题,我查看了下源码解决了,主要代码如下:
//启用数据库
webSettings.setDatabaseEnabled(true);
String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();
//启用地理定位
webSettings.setGeolocationEnabled(true);
//设置定位的数据库路径
webSettings.setGeolocationDatabasePath(dir);
//最重要的方法,一定要设置,这就是出不来的主要原因
webSettings.setDomStorageEnabled(true)
//配置权限(同样在WebChromeClient中实现)
public void (String origin,
GeolocationPermissions.Callback callback) {
callback.invoke(origin, true, false);
super.(origin, callback);
}
配置权限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
8. 请问android如何修改系统gps信息,也就是我修改gps定位后,其他软件通过gps获取地理位置
我之前做过android网络地图相关的开发 无论是gps还是中国的北斗定位系统 都是通过手机硬件和定位卫星进行时时连接 数据也是时时传输 不存在数据缓存(客户端有可能有数据缓存) 如果实在想修改定位 可以通过eclipse(专门开发android的软件)启动一个android模拟器 在模拟器上安装微信或者你需要定位的软件 在里面模拟经度纬度(因为模拟器没有gps硬件
) 点击send相当于获取了你设置的位置信息
9. Android高德地图如何获取当前地理位置
小德支持两种定位方式哦~GPS定位,户外能看到天空的地方效果最好,受天气和信号遮挡影响较大;网络定位,通过WiFi信号和基站信号(移动、联通、电信等运营商的信号塔)进行定位。
10. Android 如果获取拍摄照片的地理位置
需要通过第三方的数据或者服务来确定具体的地名
本身手机照相的图片保存的只是经纬度信息,需要将这个信息进行转化得到具体的地名
比如,你可以使用网络地图的API,它是免费开放的,通过它的API,可以将经纬度转化为具体的地名,反过来也可以。