web-dev-qa-db-ja.com

v23でSymbol Manifest.permission.WRITE_EXTERNAL_STORAGEが見つかりません

私は次の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

しかし、次のエラーが発生しています

Symbol Manifest.permission.WRITE_EXTERNAL_STORAGEが見つかりません

SdkVersionを23に設定しましたが、なぜこのエラーが表示されるのですか

19
Siddhpura Amit

最後に、メニフェストファイルは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

48
Siddhpura Amit

マニフェストクラスの前にAndroidのみを記述します。変更:

Manifest.permission.WRITE_CALENDAR

に:

Android.Manifest.permission.WRITE_CALENDAR

23
Anand Raj Mehta

マニフェストクラスは、Androidから使用できます。詳細な許可タイプについては、こちらから読み取ることができます Manifest.permission 、これを見て

int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
    Android.Manifest.permission.WRITE_CALENDAR);
7
icaksama

この問題の解決策は簡単です。Word「manifest」の前にWord「Android」を追加するだけです。

Android.Manifest.permission.WRITE_CALENDAR

3
Xcoder

この記事 をお読みください。

許可システムが再設計されたため、アクセスを取り消すために必要なアクセス許可とそうでないアクセス許可があります。要求する特定の許可は、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);
1
Kostas Drak