将照片保存到Android Gallery

将照片保存到Android Gallery,android,save,android-gallery,Android,Save,Android Gallery,我试图将我用手机拍摄的位图照片添加到Android Studio中的图库中,但出现错误: Failed to insert image java.lang.SecurityException: Permission Denial: writing com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=4110, uid=10058 requires andro

我试图将我用手机拍摄的
位图
照片添加到Android Studio中的图库中,但出现错误:

Failed to insert image
   java.lang.SecurityException: Permission Denial: writing com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=4110, uid=10058 requires android.permission.WRITE_EXTERNAL_STORAGE, or grantUriPermission()
我在清单xml中使用了:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="21"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="21" />

我使用的是Nexus 5 emulator和Android 5.1版。

正如@njzk2所指出的,不要使用该属性。此属性用于更高API级别不再需要的权限。文档中给出的示例是应用此属性的几个原因之一:

例如,从Android 4.4(API级别19)开始,它不再是 您的应用程序需要请求
写入外部存储
当您的应用程序想要写入自己的应用程序时的权限 外部存储上特定于应用程序的目录(目录 由
getExternalFilesDir()
提供。但是,许可是无效的 API等级18及以下要求


在您的情况下,您正在访问一个公共目录;您确实需要所有API级别的
WRITE\u EXTERNAL\u STORAGE
权限。

您确定它是Android 5.1而不是6.0吗?因为只能从棉花糖开始,您可以单独拒绝权限
android:maxSdkVersion=“21”
为什么?您的设备是API 22。
MediaStore.Images.Media.insertImage(getContentResolver(), FullBitmap, "Name" , "Date");