要将图像保存到SECONDARY_STORAGE,可以使用以下步骤和代码示例:
boolean isExternalStorageWritable = Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED);
if (isExternalStorageWritable) {
// 获取外部存储目录
File externalStorageDir = Environment.getExternalStorageDirectory();
// 创建保存图像的文件夹
File imageDir = new File(externalStorageDir, "MyImages");
if (!imageDir.exists()) {
imageDir.mkdirs();
}
// 创建保存图像的文件
File imageFile = new File(imageDir, "myImage.jpg");
// 将Bitmap保存为图像文件
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.my_image);
try {
FileOutputStream outputStream = new FileOutputStream(imageFile);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, outputStream);
outputStream.flush();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
在这个示例中,我们首先检查外部存储是否可用,然后创建一个名为"MyImages"的文件夹,然后创建一个名为"myImage.jpg"的图像文件。最后,我们将Bitmap对象压缩为JPEG格式并将其保存到图像文件中。
请注意,这种方法将图像保存到外部存储的根目录,即SECONDARY_STORAGE。如果您希望将图像保存到其他位置,请相应地更改文件夹和文件的路径。
同时,请确保在Android设备上具有WRITE_EXTERNAL_STORAGE权限,否则保存图像将失败。