android 图片保存到相册
时间: 2023-12-14 16:00:11 浏览: 214
在Android中,我们可以将图片保存到相册。下面是实现的步骤:
1. 首先,我们需要获取到要保存的图片的Bitmap对象。
你可以从网络、本地文件或者其他资源获取到图片的Bitmap对象。
2. 接下来,我们需要创建一个文件对象来保存图片。我们将使用Environment的DIRECTORY_DCIM目录作为保存图片的目录。
```java
String fileName = "my_image.jpg";
File storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
File imageFile = new File(storageDir, fileName);
```
3. 确保我们的App具有写入外部存储的权限。在AndroidManifest.xml文件中添加以下权限:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
```
4. 接下来,我们需要把Bitmap对象保存到文件中。我们可以使用Bitmap的compress()方法来实现这一点。
```java
try {
FileOutputStream fos = new FileOutputStream(imageFile);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.flush();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
```
5. 最后一步是通知系统相册更新图片库,以便于在相册中显示我们保存的图片。
```java
Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
Uri contentUri = Uri.fromFile(imageFile);
mediaScanIntent.setData(contentUri);
sendBroadcast(mediaScanIntent);
```
这样,我们就成功将图片保存到相册了。你可以在系统相册中找到保存的图片。请注意,Android 10及以上版本需要特殊处理来保存到相册中。
阅读全文