我使用以下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的权限对话框
如下面的截图
但是我得到了以下错误
找不到符号Manifest.permission.WRITE_EXTERNAL_STORAGE
我已将sdkVersion设为23,但为什么我仍然会收到此错误
答案 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" />
生成以及清单文件
所以,当我在其下面编写代码时,
<强> 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);