android - 棉花糖权限应该仅在尚未授予时询问

标签 android android-studio permissions android-6.0-marshmallow android-permissions

我正在开发一个需要多个权限的应用程序,所以我添加了它并做了棉花糖代码,但问题是当我在棉花糖中重新打开一个应用程序时它总是请求许可,我只想问它是否未授予。

请帮助我编写代码,在此先感谢!

最佳答案

只需检查权限,仅在必要时请求。

的帮助下检查权限
checkSelfPermission(Manifest.permission.READ_CONTACTS)

检查权限是否已经被授予

if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
        != PackageManager.PERMISSION_GRANTED) {
    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
            MY_PERMISSIONS_REQUEST_READ_CONTACTS);

    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
    // app-defined int constant

    return;
}

然后处理权限

@Override
public void onRequestPermissionsResult(int requestCode,
    String permissions[], int[] grantResults) {
switch (requestCode) {
    case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
        if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {

            // permission was granted, yay! do the

        } else {
            // permission denied, Disable the
            // functionality that depends on this permission.
        }
        return;
    }
}}

关于android - 棉花糖权限应该仅在尚未授予时询问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39787981/

相关文章:

java - Android Studio 无法从 'generated_java' 文件夹导入 java

android - 用Kotlin执行房间时出现错误

facebook - 请求额外许可 Facebook SDK 4 iOS

android - 在 android 的 listView 中单击它时更改按钮的图像

Android - 如何知道设备是否只有 WiFi?

android - 在 Android 应用程序上使用 Glide 时崩溃

linux下不同用户下的java系统偏好设置

android - 无法使用 firebase 身份验证模块注册

android - Text to Speech 不能在 API 级别 30 中工作,而不是英语

android - Google C2D_MESSAGE 权限错误