Android 将位图保存到 SD 卡

2024-04-26

我有一个按钮, 我希望当我单击它时,图像会保存到 SD 卡中(或内部存储,如 htc one x 我们没有像 SD 卡这样的外部存储)

这是我的代码:

            sd.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub
                MpClick.start();
                File myDir=new File("/sdcard/Saved_images");
                myDir.mkdirs();
                Random generator = new Random();
                int n = 10000;
                n = generator.nextInt(n);
                String fname = "Image-"+ n +".jpg";
                File file = new File (myDir, fname);
                if (file.exists ()) file.delete (); 
                try {
                       FileOutputStream out = new FileOutputStream(file);
                       bitMapToShare.compress(Bitmap.CompressFormat.JPEG, 600, out);
                       out.flush();
                       out.close();

                } catch (Exception e) {
                       e.printStackTrace();
                }
            }
        });

以及如何让其中出现一条消息,上面写着“您的图像已保存”。 就像警报一样,但持续 2 秒然后消失


try this

private void SaveImage(Bitmap finalBitmap) {

   String root = Environment.getExternalStorageDirectory().toString();
   File myDir = new File(root + "/saved_images");    
   myDir.mkdirs();
   Random generator = new Random();
   int n = 10000;
   n = generator.nextInt(n);
   String fname = "Image-"+ n +".jpg";
   File file = new File (myDir, fname);
   if (file.exists ()) file.delete (); 
   try {
       FileOutputStream out = new FileOutputStream(file);
       finalBitmap.compress(Bitmap.CompressFormat.JPEG, 90, out);
       out.flush();
       out.close();

   } catch (Exception e) {
       e.printStackTrace();
   }
}

并将其添加到清单中

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

看看这个答案Android 将文件保存到外部存储 https://stackoverflow.com/a/7887114/964741

EDIT:通过使用此行,您可以在图库视图中查看保存的图像。

sendBroadcast(new Intent(
Intent.ACTION_MEDIA_MOUNTED,
        Uri.parse("file://" + Environment.getExternalStorageDirectory())));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 将位图保存到 SD 卡 的相关文章

  • Android SSL 无对等证书

    我有一个例外 没有同行证书 当我询问谷歌时 我得到了解决方案 我信任所有证书 但这个问题的答案是 它是不安全的 所以我给班级打电话 HostnameVerifier hostnameVerifier org apache http conn
  • 从另一个 Android 应用程序打开 Instagram 应用程序并发送带有标题的图像

    我基本上寻找的是从另一个应用程序打开 Instagram 应用程序并发送带有标题的图像 有一些有用的文档可以在 iOS 中执行此操作 iPhone 挂钩 https instagram com developer mobile sharin
  • MaterialComponents AlertDialog 文本颜色

    Reading MaterialComponents 主题警报对话框按钮 https stackoverflow com questions 52829954 materialcomponents theme alert dialog bu
  • Javascript图像编辑插件

    在哪里可以找到 Javascript 或 jQuery 图像编辑器插件 用户可以单击图像进行编辑 并且该插件允许他们进行裁剪 调整大小 旋转 翻转等 Pixastic http pixastic com lib 不再活跃 和CamanJS
  • Orientation改变时如何处理Activity?

    我正在编写一个活动 它从服务器加载数据并使用 ArrayAdapter 将其显示为列表 为此 我显示了一个进度对话框 即加载 同时它从服务器加载所有数据 然后我在处理程序中关闭该对话框 我的问题是 当我更改方向时 会再次显示进度对话框 这是
  • Flutter - 当用户移动到其他(预览)屏幕时如何正确暂停相机?

    我需要pause当我移动到导航树上的另一个屏幕以节省电池和性能时相机 我尝试过了dispose cameraController 但 flutter 从另一个屏幕返回时不会重新初始化状态 但这很明显 我使用相机的主要代码 override
  • 在 Android 中绘制一条带有弯曲边缘的线

    I am using canvas drawLine to draw some line in android but the lines are too sharp but i need a curved edges 这里的 1 是我所拥
  • 自定义 ListView 具有不同的行布局,根据 Web 服务响应进行扩展

    我有列表视图 我有3组观点 图像视图 视频查看 文本视图 我有一个返回图像 视频和文本的网络服务器 因此 根据服务器的响应 我想膨胀列表视图中行的视图 我知道使用自定义适配器来扩展自定义布局 我想知道如何使用自定义适配器来扩充视图类型 例如
  • 错误:包 com.google.android.gms.appstate 不存在

    由于此错误 无法编译我的 android 项目 BaseGameUtils src main java com google example games basegameutils GameHelper java Error 32 39 e
  • 使用MockWebServer暂停功能测试

    我正在测试使用 MockWebServer 的挂起函数返回结果的 api 但它不适用于 runBlockingTest testCoroutineDispatcher testCorounieScope 除非launch使用builder
  • 如何在Android data/data/project文件系统中创建文件目录和文件夹

    我正在开发一个视频编辑器程序 并且对 android 和 java 相当陌生 我希望发生的是 当用户按下 创建新项目 按钮时 会弹出一个对话框 询问用户项目的名称 我已经把那部分写下来了 但是我想要的是 当用户在该对话框上按 确定 时 我的
  • Listview里面只有一个Element

    您好 我正在尝试将列表视图放入列表视图中的列表视图中 唯一的问题是只有第一个列表视图正确显示所有元素 此后的每个列表视图仅包含一个元素 UPDATE 创建我自己的不可滚动列表视图解决了这个问题 https stackoverflow com
  • 在运行时用Dagger添加Retrofit RequestInterceptor

    我正在使用匕首和改装 我用 Dagger 注入我的 Retrofit 服务 现在我想做一个授权请求来获取 accessToken 之后 我想使用请求拦截器来增强我的 api 模块 以便将此访问令牌用于将来的请求 我的想法是在收到访问令牌后使
  • Android 方向传感器的替代品是什么?

    大家好 我正在为 Android 构建 3D 游戏 我目前正在尝试在我的游戏中添加一个传感器 允许玩家倾斜机器人作为其控制 理想情况下 我想使用方向传感器 但我注意到它已被弃用 有谁知道如何检测 Android 中的倾斜并且不使用这个传感器
  • C/C++ 通过 Android NDK 在 JNI 中看不到 Java 方法

    我正在尝试从使用 NDK 构建的 C 类文件调用 Java 方法 它不断抛出常见的 未找到非静态方法 错误并导致整个 Android 应用程序崩溃 下面的代码片段 有些东西可能不需要 但我按原样保留它们 因为焦点 问题在于refreshJN
  • 如何为 Android Q 打开具有特定专辑或文件夹的默认图库应用程序?

    我尝试打开图库中的特定文件夹 如下代码所示 但它对我不起作用 并且出现错误无法找到物品 fun openDirectoryInGallery context Context directory String val intent Inten
  • 按照说明后“找不到您尝试购买的商品”

    所以我按照以下说明进行操作http developer android com google play billing billing admin html http developer android com google play bi
  • 我可以在 Android Market 上出售我的 SL4A 应用程序吗?

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想使用 SL4A 在 Android 上使用 Python 开发一个应用程序 并且我想知道是否可以将其作为应用程序在 Android Market
  • 有什么方法可以禁用/覆盖 Galaxy Tab 4 上的多任务按钮吗? [复制]

    这个问题在这里已经有答案了 我们编写了一个工业控制应用程序 并随我们的制造产品预装在三星 Galaxy 平板电脑上 我们使用的平板电脑是运行 Honeycomb 的 Tab 10 但我们无法再获得足够的 OEM 平板电脑 因此我们改用运行
  • RecyclerView 不调用 onCreateViewHolder 或 onBindView

    没有收到任何错误 所有数据似乎都有效 由于某种原因 没有调用与视图相关的方法 我已确定以下事项 getItemCount 是唯一被调用的适配器方法 并且返回一个正整数值 我知道这将是你们将要查看的区域 构造函数正在被调用 成员变量有效 Pa

随机推荐

  • jquery 选择器 id、class、rel 等,其中值大于给定数字

    我想淡出所有数字属性大于或小于给定数字的 div 就像是 div id 2 fadeTo slow 0 6 但我想使用 gt 或 基本上我会把我所有的 div 命名为 div text div div text div div text d
  • 如何防止在 Google Chrome 中选择文本?

    没有 oEvent preventDefault 在GC工作 我需要防止在触发 onmove 事件时选择文本 EDIT 事实证明这很容易 function disableSelection document onselectstart fu
  • ‘access’参数模式有什么用处?

    Ada 中有三种传递参数的 正常 模式 in out and in out 但还有第四种模式 access 有什么需要它们的吗 即 否则不可能实现的事情 现在 我确实知道 GNAT JVM Ada 编译器在导入的 库 规范中大量使用了它们
  • 角度样式未应用于组件(尽管使用了主机选择器)

    我的角度项目中的组件样式存在问题 我基本上无法让它工作 为了解释我的问题 我使用 Angular CLI CLI 6 0 8 Angular 6 1 0 创建了一个新项目 我立即创建了一个新的测试组件 在其中声明了以下内容 COMPONEN
  • 最喜欢的开源 Google App Engine 应用程序(Java 或 Python)[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 你能阻止 jQuery focusout 在失去焦点时触发吗?

    我有一个输入框 我想在它失去焦点时保存它的值 非常简单的事情 我可以通过 jQuery 来完成focusout event 然而问题是我不想解雇focusout当用户单击输入框旁边的 X 图标时发生的事件 示例如下所示 因此 当用户跳出此输
  • 在 tomcat 上部署 AngularJS 应用

    我使用 yeoman 角度生成器创建了一个 AngularJS 应用程序 现在我想使用 Apache tomcat 托管它 我已经运行了 grunt build 并将所有资产准备在 dist 文件夹中 有没有办法创建 war 文件 或者我可
  • react-native limit 列表项

    我在用Flatlist https facebook github io react native docs flatlist html来自反应本机和ListItem https react native training github i
  • 在 Mobile Safari 中禁用同源策略

    我有一个 HTML5 JavaScript 应用程序 最初是为在某些汽车上运行而编写的 基本上 我需要将我的应用程序设置为在浏览器中运行 以便向客户进行简单的演示 我正在使用 jQuery ajax 它由于同源策略而导致问题 我发现了很多在
  • 有没有办法以特定顺序存储 PyTable 列?

    当使用字典或类进行模式定义以调用 createTable 时 PyTable 列似乎按字母顺序排列 我的需要是建立一个特定的顺序 然后使用 numpy genfromtxt 从文本中读取和存储我的数据 我的文本文件没有像 PyTable 那
  • IBM Worklight Server 6.2 - 在 Apache Tomcat 上运行? “等待管理服务启动超时”

    我一直在尝试设置 IBM Worklight 环境 我想使用 Windows服务器 Apache Tomcat 7 撰写本文时最新 IBM Worklight 6 2 撰写本文时最新版本 MySQL Server 5 6 撰写本文时最新 一
  • TypeScript 函数声明在接口中的区别

    TypeScript 接口中这两种函数声明有什么区别 interface IExample myFunction str string void and interface IExample myFunction str string gt
  • 如何在 Gremlin 中进行分页

    Tinkerpop 3中如何进行分页 我想获取查询的前 10 个元素 然后获取接下来的 10 个元素 而不必将它们全部加载到内存中 例如 下面的查询返回 1000 000 条记录 我想以 10 x 10 的形式获取它们 而不是一次加载所有
  • 如何在 Kivy 中设置小部件/布局的最小允许宽度/高度?

    我有包含 3 个元素的 BoxLayout 我需要第一个和最后一个元素占据最小的可用空间 中间元素具有固定比例 1 1 因此当我调整窗口大小时 侧面元素变得太小并且内容会超出其中 我需要例如标签 或按钮 甚至不同元素的集合 文本始终insi
  • 防止 iOS 在进入后台之前截取应用程序的屏幕截图

    大家可能都知道 iOS 在将应用程序放入后台之前会对其进行屏幕截图 这通常是为了更好的用户体验 例如快速动画以恢复应用程序等 我不希望我的应用程序屏幕截图存储在设备上 但我希望多任务处理仍然存在 我想出了一个解决方案 但我不确定我是否朝着正
  • Docker LABEL 用于在多阶段构建中访问构建镜像

    在 CI 构建期间 我通过添加以下内容从多阶段 Docker 构建 测试报告 中的构建映像中提取构建工件 LABEL构建步骤 然后使用带标签的图像创建一个容器以提取工件 这似乎在 Mac 版 Docker Desktop 中被破坏了 或者我
  • Android 上的 SQLite 如何处理长字符串?

    我想知道 Android 的 SQLite 实现如何处理长字符串 从 sqlite 的在线文档中读取 它说 sqlite 中的字符串限制为 100 万个字符 我的弦肯定更小 我正在创建一个简单的 RSS 应用程序 在解析 html 文档并提
  • Python 中的静态变量继承

    我正在为 Blender 的一个项目编写 Python 脚本 但我对该语言还很陌生 我感到困惑的是静态变量的使用 这是我目前正在处理的代码片段 class panelToggle bpy types Operator active Fals
  • 使用二进制遮罩遮罩 RGB 图像

    我在 MATLAB 中读入了一个 RGB 图像 M x N x 3 矩阵 我还有一个图像的二进制掩码 M x N 矩阵 对于某些感兴趣的区域来说它只是 0 而其他地方都是 1 我正在尝试找出如何使用该二进制掩码来掩蔽 RGB 图像 我尝试过
  • Android 将位图保存到 SD 卡

    我有一个按钮 我希望当我单击它时 图像会保存到 SD 卡中 或内部存储 如 htc one x 我们没有像 SD 卡这样的外部存储 这是我的代码 sd setOnClickListener new View OnClickListener