经过测试发现,在有的手机上获取经纬度没有问题,在其他的手机上获取经纬度却又问题,因此我查看了谷歌提供的源码,从源码里面提取出了一份新的获取经纬度的代码,以后每次获取基本都获取成功了:
LocationManager lm = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
Location retLocation = null ;
LocationProvider gpsProvider =
lm.getProvider("gps");
if(gpsProvider == null)
{
longitude.setText("0");
dimensions.setText("0");
return;
}
//下面必须原封不动的照搬,否则就会出错,原因我也不知道。
lm.requestLocationUpdates(gpsProvider.getName(),
0 /*minTime*/, 0 /*minDist*/, this);
try {
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,
3000 /*minTime*/, 0 /*minDist*/, this);
} catch (RuntimeException e) {
// If anything at all goes wrong with getting a cell location do not
// abort. Cell location is not essential to this app.
}
retLocation = lm.getLastKnownLocation("gps");
if(retLocation==null)
{
longitude.setText("0");
dimensions.setText("0");
}
else
{
double geoLatitude = retLocation.getLatitude();//获取经度
double geoLongitude = retLocation.getLongitude();//获取维度
longitude.setText(""+geoLongitude);
dimensions.setTag(""+geoLatitude);
}
longitude.setEnabled(false);
Location改变的消息在这个接口方法中获取:
private void updataGpsWidthLocation(Location location) {
// TODO Auto-generated method stub
if(location != null)
{
double lit = location.getLongitude();//进度
double dimen = location.getLatitude();//维度
longitude.setText(""+lit);
this.dimensions.setText(""+dimen);
float accuray=location.getAccuracy();//获取精确度
Log.e("", "accuray:"+accuray);
accurText.setText(""+accuray);
}
else
{
longitude.setText("0");
dimensions.setText("0");
}
}
分享到:
相关推荐
安卓调用GPS获取经纬度源码
android gps 获取经纬度 代码简单可用,只要一点击按钮,就打印出所在地点的经纬度。
Android中获取定位经纬度信息示例代码
android 查询经纬度源码,给各位参考
资源包括客户端和服务段源码,客户端源码有包括(androidstudio开发的和eclipse开发的),服务端为myeclipse开发的,主要实现了用户登录,注册,点击button获取经纬度,以及详细地理位置信息(省,市,区,街道) ...
Android高级应用源码-android获取当前经纬度.zip
使用开发工具:Android Studio,这个代码实现海拔高度和经纬度的获取,功能比较简单,需要的可以在上面继续添加。
这是使用fused location provider获取经纬度的源码。虽然结合了GooglePlayService但是不需要翻就能获取到地址。 注意运行时手机必须支持google play store 虚拟机必须是Google Api System Image才可以。
NULL 博文链接:https://104zz.iteye.com/blog/1680860
开发环境:android studio Chipmunk 2021.2.1版本 内容概要:谷歌拼音输入法,支持中英文切换。C++代码,cmake编译通过,整个工程可以编译成一个输入法apk,安装后需要在设置里添加此输入法,再选择使用即可。 适合...
Android开发实例:rss阅读器 源码
利用谷歌地图获取对应地名的经纬度源码(C#) 谷歌地图获取经纬度源码
Android中英文电子词典源码(so easy).rar android仿开心网源代码.rar android及时通讯源码:实时对讲机.rar android在线订餐项目源码.rar android手机游戏分享客户端源码.rar android掌上几分钟视频应用源码.rar ...
[Android游戏源码]-水果连连看源码,次源码适合安卓游戏开发初学者学习,内有注释。
源码 博文链接:https://104zz.iteye.com/blog/1680811
android开发实例:音乐播放器 内含源码及说明文档
Android使用WebView获取网页的源码,将WebView封装进ArthurWebView,直接创建并初始化即可使用!
杨凯专属频道坚持免费资源共享原则:android源码程序:五子棋,亲情奉献源码
C# windows mobile中的GPS经纬度信息 源码。