检查权限对话框出现一次又一次,尽管授予权限并单击所有对话框,因为接受它关闭应用程序。权限请求对话框多次出现android
我有一个帮助方法来检查多个权限,看看他们中的任何一个都没有被授予。
public static boolean hasPermissions(Context context, String... permissions) {
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && context != null && permissions != null) {
for (String permission : permissions) {
if (ActivityCompat.checkSelfPermission(context, permission) != PackageManager.PERMISSION_GRANTED) {
return false;
}
}
}
return true;
}
int PERMISSION_ALL = 1;
String[] PERMISSIONS = {Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.CAMERA};
if(!hasPermissions(this, PERMISSIONS)){
Log.d("permission","permission");
ActivityCompat.requestPermissions(this, PERMISSIONS, PERMISSION_ALL);
}
我希望它在授予权限后加载相同的活动,即MainActivity。
任何人都可以指出为什么权限被询问多次。
您会收到两个提示:一个'ACCESS_FINE_LOCATION',一个用于'CAMERA'。如果用户没有授予权限,那么每次调用onCreate时都会询问您的代码。这是你所看到的,还是你看到别的东西? –
我收到两个提示:一个用于ACCESS_FINE_LOCATION,另一个用于CAMERA。我正在授予权限,但权限提示仍然会一次又一次地出现,如4次或5次,然后关闭应用程序。 – asifa
是否有堆栈跟踪? – Zoe