开发者社区> 问答> 正文

高德地图的onLocationChanged返回经纬度经常都是(0,0),为什么?

进入界面,我开始调用定位功能,能从onLocationChanged获取到当前的经纬度。
自动10秒后去重新定位的时候,onLocationChanged给我返回的经纬度则大多都是0,0。为什么会这样啊?是因为我位置没移动,所以给我返回0吗?还是其他什么原因,谢谢!

private AMapLocationListener locationListener = new AMapLocationListener() {
@Override
public void onLocationChanged(AMapLocation aMapLocation) {
if (null != aMapLocation) {
location = aMapLocation;
getLocation(aMapLocation);//经常这里的location的经纬度为0
Log.i("tang","经纬度="+location.getLatitude()+"//"+location.getLongitude());
System.out.println("===========" + getLocationStr(aMapLocation));
} else {
System.err.println("===========定位失败");
}

}
};

展开
收起
dsn727455218 2018-08-29 17:18:23 6989 0
3 条回答
写回答
取消 提交回答
  • 是否授予了应用位置权限,可以在系统设置里查看。

    2019-07-17 23:02:48
    赞同 展开评论 打赏
  • 没开启定位权限,或者手机定位没开吧

    2019-07-17 23:02:48
    赞同 展开评论 打赏
  • 擅长互联网移动开发。。。

    开启了定位权限了吗?

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_GPS" />

    这几个权限必须要有。
    安卓6.0以上必须要动态申请权限。

    2019-07-17 23:02:48
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载