在v23上找不到Symbol Manifest.permission.WRITE_EXTERNAL_STORAGE

Sid*_*mit 20 android android-manifest android-permissions

我用以下build.gradle文件编译代码

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {

        applicationId "com.example"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

为了将保存照片存入SDCARD,我已经打开了V23的权限对话框

如下截图

在此输入图像描述

但我得到了以下错误

找不到Symbol Manifest.permission.WRITE_EXTERNAL_STORAGE

我把sdkVersion放到23但是为什么我仍然得到这个错误

Sid*_*mit 49

最后我发现Menifest文件是由Android Studio自动生成的

在AndroideMenifest中,我为ParsePushNotification编写了以下代码

 <!--
      IMPORTANT: Change "com.parse.starter.permission.C2D_MESSAGE" in the lines below
      to match your app's package name + ".permission.C2D_MESSAGE".
    -->
    <permission android:protectionLevel="signature"
        android:name="com.example.permission.C2D_MESSAGE" />
    <uses-permission android:name="com.example.permission.C2D_MESSAGE" />
Run Code Online (Sandbox Code Playgroud)

生成以下清单文件

在此输入图像描述

因此,当我编写下面的代码时,它的工作原理

android.Manifest.permission.WRITE_EXTERNAL_STORAGE

代替

Manifest.permission.WRITE_EXTERNAL_STORAGE

  • 或者您可以只导入 android.Manifest。 (3认同)

小智 23

只在清单类之前编写Android.更改:

Manifest.permission.WRITE_CALENDAR

至:

android.Manifest.permission.WRITE_CALENDAR


ica*_*ama 7

我想你可以在android.Manifest.permission或android.Manifest.permission_group中使用android中的Manifest类.有关详细权限类型,您可以从此Manifest.permission中读取,请参阅此内容

int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
    android.Manifest.permission.WRITE_CALENDAR);
Run Code Online (Sandbox Code Playgroud)