当我执行这段代码时
while (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 1);
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION}, 1);
}
我收到此警告 W/Activity:一次只能请求一组权限 W/Activity:一次只能请求一组权限 有什么办法可以解决这个问题吗?
答案 0 :(得分:-1)
这里有两件事,首先我认为您不需要两套位置权限,如果您使用的是 ACCESS_FINE_LOCATION
,那么粗略应该很好地涵盖在它之下。
其次,不要发送单独的权限请求,您应该发出一组组合请求并发送它。那应该可行。
int permissions_code = 42;
String[] permissions = {Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION};
ActivityCompat.requestPermissions(this, permissions, permissions_code);