关于提示用户打开权限的请求(高德地图定位权限为例)
2017-10-30 11:08
531 查看
用到高德地图之后出现了许许多多的问题,其中一个就是定位权限的问题。
高德地图按照官档操作配置,打开之后发现地图也能显示出来,定位按钮也在,但是找不到小蓝点了,并且自己的位置出现在非洲(非洲??),也就是说根本不能实现定位的
操作,然后打发Manifest对照官网的权限配置看了一遍发现定位权限也有,跟官网的一致,那么问题就来了 ,为什么我点击定位按钮不会回到自己的位置呢?
一般用到的权限 如:
这个就是打开运行应用网络访问的权限,像这种权限不需要用户自己操作,我们直接定义在Manidest中接可以使用。
为什么有的android程序的权限在开发的时候,不用在权限管理里面打开也可以正常使用呢?
这是因为google把permission权限分为好几个Protection leve,可以在google的官方文档的权限列表里面看到,其中,
危险级别的是需要用户经过选择允许才可以开启的,也就是说,需要开发者在程序代码中逻辑实现给用户选择,不然,
用户不知道是否需要开启所需要的权限;
那么就需要问们来提示用户打开权限,不然用户不知道权限是什么,就算是知道了估计也不会去设置里面打开,
这样用户体验是很差的。那么我们来看怎么提醒用户来打开权限呢?
高德地图按照官档操作配置,打开之后发现地图也能显示出来,定位按钮也在,但是找不到小蓝点了,并且自己的位置出现在非洲(非洲??),也就是说根本不能实现定位的
操作,然后打发Manifest对照官网的权限配置看了一遍发现定位权限也有,跟官网的一致,那么问题就来了 ,为什么我点击定位按钮不会回到自己的位置呢?
一般用到的权限 如:
<!--允许程序打开网络套接字--> <uses-permission android:name="android.permission.INTERNET" />
这个就是打开运行应用网络访问的权限,像这种权限不需要用户自己操作,我们直接定义在Manidest中接可以使用。
为什么有的android程序的权限在开发的时候,不用在权限管理里面打开也可以正常使用呢?
这是因为google把permission权限分为好几个Protection leve,可以在google的官方文档的权限列表里面看到,其中,
危险级别的是需要用户经过选择允许才可以开启的,也就是说,需要开发者在程序代码中逻辑实现给用户选择,不然,
用户不知道是否需要开启所需要的权限;
那么就需要问们来提示用户打开权限,不然用户不知道权限是什么,就算是知道了估计也不会去设置里面打开,
这样用户体验是很差的。那么我们来看怎么提醒用户来打开权限呢?
//检测系统是否打开开启了地理定位权限 if (ContextCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION)!=PackageManager.PERMISSION_GRANTED){ ActivityCompat.requestPermissions(this, new String []{android.Manifest.permission.ACCESS_COARSE_LOCATION},1); }
这样就会在应用需要定位权限的是时候提示用户打开需要的权限。
理解的很浅新手遇到或许能帮到,大神自己飘过........
相关文章推荐
- ACCESS"数据库提示它已经被别的用户以独占方式打开,或没有查看数据的权限"的问题
- java权限拦截,控制当前登录用户访问方法,访问路径,并json提示,驳回请求
- ACCESS"数据库提示它已经被别的用户以独占方式打开,或没有查看数据的权限"的问题
- windows2003关于客户端加入域服务器时出现“未授于用户在此计算机的请求登录权限”的解决方案
- 高德地图定位+搜索自动提示+poi搜索+移动地图选址
- iOS使用百度地图定位,关掉系统定位服务该怎么提示用户打开
- 关于 把 session 保存 sql server 中 、 无法打开登录所请求的数据库 "ASPState"。登录失败。 用户 'sa' 登录失败。
- iOS 用户允许定位权限提示框闪现
- 关于rms,打开文档的时候提示您没有权限打开文档,因为您的权限已过期
- 关于Microsoft Access数据库错误 '80004005',“已经被别的用户以独占方式打开,或没有查看数据的权限。”
- windows2003关于客户端加入域服务器时出现“未授于用户在此计算机的请求登录权限”的解决方案
- 关于高德地图Android开发时地图只显示一次、第二次打开不定位的解决办法
- 提示用户打开某些权限 (打开设置页面)
- windows 2003打开本地用户和组提示无权限的解决方法
- ios高德地图提醒打开定位功能
- IOS 系统定位提示完毕后 提示用户去开启定位权限
- iOS swift 获取对应APP定位权限是否打开并引导用户打开
- 为什么登陆不上WIN 7系统的电脑?提示无权限,登陆失败,未授权用户在计算机上请求登录
- 关于ios6 ios7地图使用权限提示框不弹出的原因
- 高德地图获取定位