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

时间:2015-11-02 07:35:55

标签: 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'
        }
    }
}

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

如下面的截图

enter image description here

但是我得到了以下错误

找不到符号Manifest.permission.WRITE_EXTERNAL_STORAGE

我已将sdkVersion设为23,但为什么我仍然会收到此错误

5 个答案:

答案 0 :(得分:48)

最后我发现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" />
生成

以及清单文件

enter image description here

所以,当我在其下面编写代码时,

<强> android.Manifest.permission.WRITE_EXTERNAL_STORAGE

而不是

<强> Manifest.permission.WRITE_EXTERNAL_STORAGE

答案 1 :(得分:23)

仅在清单类之前编写Android。变化:

Manifest.permission.WRITE_CALENDAR

为:

android.Manifest.permission.WRITE_CALENDAR

答案 2 :(得分:7)

我认为你可以在android.Manifest.permission或android.Manifest.permission_group中使用android中的Manifest类。有关详细信息权限类型,您可以阅读此Manifest.permission,请参阅此

var scheme = new mongoose.Scheme({
    artists : {
        id : String,
        name : String
    },
    albums : [{
        album : {/*object details*/},
        tracks : {/*object details*/}
    }]
});

答案 3 :(得分:3)

这个问题的解决方案很简单..只需添加单词&#34; android&#34;在单词&#34; manifest&#34;。

之前

android.Manifest.permission.WRITE_CALENDAR

答案 4 :(得分:1)

请阅读this article

由于权限系统经过重新设计,因此有些权限需要被撤销,而有些则不需要。您请求的特定权限位于名为android.permission-group.STORAGE的组中。看看这个。

试试这个:

private static final int REQUEST_EXTERNAL_STORAGE = 1;
    private static String[] PERMISSIONS_STORAGE = {Manifest.permission.READ_EXTERNAL_STORAGE,
            Manifest.permission.WRITE_EXTERNAL_STORAGE};

            ActivityCompat.requestPermissions(mActivity, PERMISSIONS_STORAGE,
                     REQUEST_EXTERNAL_STORAGE);