Android Q SDK 也会将图片保存在DCIM文件夹中,以适应较旧版本。
创始人
2024-08-15 02:30:06
0

在Android Q中,您可以使用以下代码将图片保存在DCIM文件夹中:

// 获取DCIM文件夹路径
File dcimDirectory = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);

// 创建一个新的文件
File newImageFile = new File(dcimDirectory, "my_image.jpg");

// 假设您已经有一个位图对象,将其保存到文件中
Bitmap bitmap = ...;
try {
    FileOutputStream outputStream = new FileOutputStream(newImageFile);
    bitmap.compress(Bitmap.CompressFormat.JPEG, 100, outputStream);
    outputStream.flush();
    outputStream.close();
    // 通知媒体库更新
    MediaScannerConnection.scanFile(context, new String[]{newImageFile.getAbsolutePath()}, null, null);
} catch (IOException e) {
    e.printStackTrace();
}

上述代码将创建一个新的名为"my_image.jpg"的文件,并将位图对象压缩为JPEG格式,然后将其保存到DCIM文件夹中。最后,使用MediaScannerConnection类的scanFile()方法通知媒体库更新,以便新的图片可以在相册应用中显示出来。

请注意,为了使用这段代码,您需要在AndroidManifest.xml文件中添加以下权限:


另外,从Android Q开始,您需要在运行时请求存储权限才能访问外部存储器。您可以使用以下代码请求权限:

if (ContextCompat.checkSelfPermission(context, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
    ActivityCompat.requestPermissions(activity, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQUEST_CODE);
}

确保在请求权限之后,处理onRequestPermissionsResult()回调方法以处理用户对权限请求的响应。

相关内容

热门资讯

分享一款!老友广东麻将有挂吗(... 分享一款!老友广东麻将有挂吗(辅助挂)werplan脚本(一贯真的是有挂);老友广东麻将有挂吗软件透...
带你了解!陕西微乐小程序辅助(... 带你了解!陕西微乐小程序辅助(辅助挂)wepoker有插件吗(往昔是有挂)相信很多朋友都在电脑上玩过...
一分钟了解!吉祥填大坑小程序辅... 一分钟了解!吉祥填大坑小程序辅助(辅助挂)wepoker游戏下载(果然真的是有挂);1、很好的吉祥填...
终于清楚!广东闲来app辅助(... 终于清楚!广东闲来app辅助(辅助挂)wpk透视工作室(原先是真的有挂);广东闲来app辅助免费下载...
科普!手机奇迹辅助工具(辅助挂... 科普!手机奇迹辅助工具(辅助挂)wepoker开脚本视频(素来真的有挂)是一款可以让一直输的玩家,快...
我来向大家传授!川娱竞技插件(... 我来向大家传授!川娱竞技插件(辅助挂)wejoker辅助器怎么卖(切实是真的有挂);1、完成川娱竞技...
玩家交流!雀神挂件价格辅助开挂... 玩家交流!雀神挂件价格辅助开挂(辅助挂)德普之星有辅助软件吗(原生有挂);玩家交流!雀神挂件价格辅助...
揭秘真相!微乐家乡官方免费下载... 揭秘真相!微乐家乡官方免费下载安装(辅助挂)we-poker辅助(切实是真的有挂);1、不需要AI权...
玩家必备科技!四川游戏家园通用... 玩家必备科技!四川游戏家园通用辅助(辅助挂)aa poker透视软件(原来是真的有挂);是一款可以让...
发现一款!同乡游辅助软件(辅助... 发现一款!同乡游辅助软件(辅助挂)aapoker免费透视脚本(果然是有挂);1、让任何用户在无需AI...