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()回调方法以处理用户对权限请求的响应。

相关内容

热门资讯

有挂一下!九九联盟辅助在,广西... 有挂一下!九九联盟辅助在,广西老友玩辅助,好像真的有挂(哔哩哔哩)九九联盟辅助在能透视中分为三种模型...
详细一下!雀友会广东潮汕辅助有... 详细一下!雀友会广东潮汕辅助有开挂,约战大同辅助,总是是有挂(哔哩哔哩);1、打开软件启动之后找到中...
专业一下!微乐小程序外辅助工具... 专业一下!微乐小程序外辅助工具,欢乐茶馆辅助,一直是真的有挂(哔哩哔哩)1、不需要AI权限,帮助你快...
辅助一下!道游互娱辅助,填大坑... 辅助一下!道游互娱辅助,填大坑辅助器视频,其实是真的有挂(哔哩哔哩)一、填大坑辅助器视频可以开透视的...
必备一下!潮娱乐鱼虾蟹公式辅助... 您好,潮娱乐鱼虾蟹公式辅助软件这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302...
总结一下!圣游科技,博雅红河西... 总结一下!圣游科技,博雅红河西元红河挂,确实真的是有挂(哔哩哔哩)1、许多玩家不知道博雅红河西元红河...
分享一下!福建微乐小程序修改器... 分享一下!福建微乐小程序修改器,大懒人斗十四辅助,其实真的有挂(哔哩哔哩)小薇(辅助器软件下载)致您...
解迷一下!天天贵阳游戏辅助,衢... 解迷一下!天天贵阳游戏辅助,衢州都莱罗松辅助器,都是是真的有挂(哔哩哔哩)1、天天贵阳游戏辅助模拟器...
教你一下!青橙竞技游戏辅助,决... 教你一下!青橙竞技游戏辅助,决战卡五星辅助器,都是有挂(哔哩哔哩)亲,关键说明,青橙竞技游戏辅助透视...
普及一下!微信卡五星辅助器,海... 普及一下!微信卡五星辅助器,海盗来了大白辅助,都是是有挂(哔哩哔哩)1、在微信卡五星辅助器插件功能辅...