如果gmaps需要这个权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />requestPermissions向用户要求每一个吗?android.permission.ACCESS_FINE_LOCATION权限,而没有给其他用户权限,为什么?发布于 2015-09-23 16:32:06
我应该用
requestPermissions向用户要求每一个吗?
首先什么时候使用requestPermission?
只有当此方法不返回requestPermission时,才会在checkSelfPermission之后调用PERMISSION_GRANTED。
您可以在运行时找到android所需的许可清单。这些权限中的每个都是权限组的一部分。WRITE_EXTERNAL_PERMISSION来自android.permission-group.STORAGE,ACCESS_COARSE_LOCATION / ACCESS_FINE_LOCATION来自android.permission-group.LOCATION。
如果用户允许访问权限-for示例ACCESS_COARSE_LOCATION-,那么android将自动授予该权限组-i.e的访问权限。permission-group.LOCATION-.因此,如果您稍后使用checkSelfPermission for ACCESS_FINE_LOCATION,您应该会收到PackageManager.PERMISSION_GRANTED。
如果应用程序崩溃,这意味着您试图调用,例如,在向用户请求权限组位置之前先调用LocationServices.FusedLocationApi.requestLocationUpdates。
编辑:
别忘了asynchronous.是requestPermission因此,不会在requestPermission之后调用需要权限的方法。若要调用需要权限的方法,应重写提供权限列表的onRequestPermissionsResult和它们的状态授予/拒绝。
发布于 2015-09-23 15:13:07
只需请求位置和存储组的权限即可。我也很确定精细的位置包括粗的许可,所以你不需要在你的清单中包括这一行。
https://stackoverflow.com/questions/32743008
复制相似问题