【发布时间】:2018-01-05 05:09:34
【问题描述】:
如果他/她第一次拒绝,我想重新向这种情况下的用户请求许可。我已经设置了权限,但即使我按下 deny 选项,我的应用程序也会运行。我有一个代码应该做我想做的事情,但是当我点击 Alt+Enter 时我得到 Cant resolve symbol Snackbar 它创建了另一个活动并剩下 -make 和-permision_available_camera 出现红色错误。
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
@NonNull int[] grantResults) {
if (requestCode == REQUEST_CAMERA) {
// BEGIN_INCLUDE(permission_result)
// Received permission result for camera permission.
Log.i(TAG, "Received response for Camera permission request.");
// Check if the only required permission has been granted
if (grantResults.length == 1 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// Camera permission has been granted, preview can be displayed
Log.i(TAG, "CAMERA permission has now been granted. Showing preview.");
Snackbar.make(mLayout, R.string.permision_available_camera,
Snackbar.LENGTH_SHORT).show();
} else {
Log.i(TAG, "CAMERA permission was NOT granted.");
Snackbar.make(mLayout, R.string.permissions_not_granted,
Snackbar.LENGTH_SHORT).show();
}
【问题讨论】:
-
关注这个链接rathod nilesh它会帮助你
-
不。我已经这样做了..如果用户拒绝,它将显示所需的权限,但尽管权限被拒绝,应用程序仍会运行。但我想再次弹出 Allow 或 Deny 权限,并且该应用程序仅在用户允许时才运行,否则在拒绝的情况下会出现故障
-
你可以在 onRequestPermissionsResult() 方法中处理权限结果
-
如果用户拒绝,我认为你不应该再次请求许可,你所能做的就是,不要让应用程序前进,只是向他们展示一个祝酒词或一个对话框告诉他们这个权限是应用程序正常运行并要求他们在设置中授予权限所必需的。 (当他们在对话框上单击“确定”时可能会将他们带到设置?)
标签: android android-6.0-marshmallow android-permissions runtime-permissions