您的位置:首页 > 其它

百度地图SDK,报167错误,经纬度定位是4.9E-324的解决办法

2017-04-18 10:09 337 查看
在网上查了很多资料,说经纬度定位是4.9E-324,是什么 so文件不齐啊,key的问题啊,我把所有的armeabi文件加进去,还是定位失败,后来在网上看到,说是会不会第一次软件询问你是否同意定位时,选择了否,我印象中我的小米5手机好像安装完成之后,没有询问过我,于是我在软件的授权管理中一看,发现还真是允许定位这一条我给的是询问,然后切换为允许之后,定位就成功了。关于so文件,我只用了一个包,把所有文件导进去,导致apk一下子扩大了十几兆,我是不能接受的,目前只用一个包,几个手机都运行正常,之后碰到问题,可能会考虑加上其他的so包。



      经过在网上查找,在这篇文章中http://blog.csdn.net/kjunchen/article/details/52769915发现了原因,原来是Android 6.0系统不会自动的弹出定位授权提醒,我按照前面文章,在代码中加上了 以下部分,就会弹出授权提示了,问题解决。

//Android 6.0判断用户是否授予定位权限
if (VERSION.SDK_INT >= VERSION_CODES.M) {//如果 API level 是大于等于 23(Android 6.0) 时
//判断是否具有权限
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
//判断是否需要向用户解释为什么需要申请该权限
if (ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.ACCESS_COARSE_LOCATION)) {
Toast.makeText(MainActivity.this,"自Android 6.0开始需要打开位置权限",Toast.LENGTH_SHORT).show();
}
//请求权限
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},
REQUEST_CODE_ACCESS_COARSE_LOCATION);
}
}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐