Android 发送包含 PDF 文件的邮件

2024-01-12

我正在尝试发送位于设备上文件夹中的 PDF 文件。文件已选择并发送,但它是空的。我哪里错了?

String inviare = n_fr.getText().toString();
Uri uri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), getString(R.string.app_name)+"/"+"Folder_"+anno+"/"+"file_"+inviare+".pdf")); 

            Intent sendEmail= new Intent(Intent.ACTION_SEND);
                   sendEmail.setType("application/pdf");
                   sendEmail.putExtra(Intent.EXTRA_SUBJECT, filename);                         
                   sendEmail.putExtra(Intent.EXTRA_STREAM, uri);
            startActivity(Intent.createChooser(sendEmail, "Invia PDF"));

  • 确保您已启用android.permission.WRITE_EXTERNAL_STORAGE or android.permission.READ_EXTERNAL_STORAGE您的清单中的许可

  • 检查是否uri解析为实际文件,并尝试记录文件内容(Log.d)在该代码块中,以确保文件内容实际上可读。

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

Android 发送包含 PDF 文件的邮件 的相关文章

随机推荐

  • Redux - 一个与多个减速器

    我来自 Elm 社区 在 Elm 中 每个应用程序都有自己的视图 模型和状态 并且基本上采用与 redux 非常相似的方法来解决问题 不管怎样 我发现自己在多个减速器的想法中挣扎 在 Elm 中 我习惯为所有操作 消息 创建一个单独的文件
  • 如何从 angularjs ng-route 中删除哈希#

    我试图使用 locationProvider 从 Angular js 中的 url 路由中删除主题标签 但它给了我错误 app js var eclassApp angular module eclassApp ngRoute eclas
  • 在python中获取每个月的最后一个星期五

    我想要接下来三个月的每个月的最后一个星期五 Friday date datetime date today while Friday date weekday 4 Friday date datetime timedelta 1 这给了我最
  • Slack 应用程序和本地存储

    我们正在计划一个 Slack 应用程序 但我们需要本地存储 我们不想在我们的服务器上存储用户 频道的任何数据 我们希望将其永久或临时保存在用户的本地计算机或 Slack 服务器中 有办法做吗 Thanks 以下是我对这个主题的想法 本地存储
  • GWT 和 Vaadin 之间的差异

    谁能建议 GWT 或 Vaadin 是否是设计应用程序的更好选择 另外 编码风格有什么区别 在 GWT 中 应用程序逻辑通常在客户端运行 它仅在需要读取 保存某些数据时调用服务器 在 Vaadin 中 应用程序逻辑位于服务器端 每次用户交互
  • 添加 IPV6_V6ONLY 标志的动机是什么?

    在 IPv6 网络中 IPV6 V6ONLY 标志用于确保套接字仅使用 IPv6 特别是 IPv4 到 IPv6 的映射不会用于该套接字 在许多操作系统上 默认情况下未设置 IPV6 V6ONLY 但在某些操作系统 例如 Windows 7
  • 报告 API 503 后端错误

    在过去的几周里 我用来从报告 API 检索用户使用情况报告的批处理任务一直失败 并出现以下响应 com google api client googleapis json GoogleJsonResponseException 503 OK
  • Docker:无法连接 Spring Boot 和 MYSQL

    我尝试使用 Dockerfile 或 Docker compose 将我的项目容器化 首先 我使用命令从 mysql 创建容器 docker run name ms p 3306 3306 e MYSQL ROOT PASSWORD pas
  • 按模型的属性(而不是字段)对 Django QuerySet 进行排序

    一些代码和我的目标 我的 简化的 模型 class Stop models Model EXPRESS STOP 0 LOCAL STOP 1 STOP TYPES EXPRESS STOP Express stop LOCAL STOP
  • 将字符添加到频率列表

    我有一个关于霍夫曼编码的项目 但我陷入困境 我不明白为什么我的代码不起作用 这是练习 写一个函数add1给定一个字符 它在频率列表中的频率加 1 如果该字符尚未出现在频率列表中 则会添加该字符 add1 e l 1 e 2 x 1 l 1
  • 连接到 SQL Server 时出现 SQL 异常

    我知道这是一个重复的问题 我发现了非常相似的问题和解决方案 但仍然让我震惊 我正在使用 eclipse 将我的 java 应用程序与 microsoft sql server 2008 数据库连接 以下是我的代码 import java s
  • 使用 JPQL 过滤具有唯一 ID 的重复记录

    我正在查询一个维护不善的建筑物数据库 其记录类似于以下内容 ID NAME CODE 54 Building A a1234 97 Building A a1234 我正在使用以下 JPQL 语句进行查询 其中 bCodes 是建筑代码数组
  • 如何检测Android H.264硬件加速能力

    大量 但不是全部 Android 设备支持 H 264 视频编解码器的硬件加速 但不支持 VP8 VP9 编解码器 为了提供更高质量的用户体验 我们希望尽可能选择硬件加速的编解码器 因此 需要运行时检测特定设备是否具有 H 264 硬件加速
  • 如何将 JSON 转换为数组并在 jQuery 中循环遍历它?

    我正在使用 JSON 与用户进行通信 PHP 将数组转换为 JSON 的形式如下 success text to display warning NONE notice text to display error NONE jQuery 显
  • OS X Dock API?检索 OS X 活动应用程序的图标以及徽章和其他修改

    是否有 API 用于检索 Mac OS X 上当前打开的应用程序的图标 我正在尝试检索活动应用程序的所有图标以及应用程序顶部的任何徽章 即邮件中的新消息数量或传输中的当前下载速率 有某种 Dock API 吗 我能找到的唯一提到用于检索当前
  • Chrome 中的默认输入边框

    默认情况下 输入元素的样式为border 2px inset 但是 只要背景是白色 边框就会显示为细灰色线 带有 eee颜色 但如果我改变背景 即使是最轻微的 例如 feffff 边界突然改变为你所期望的2px inset 是什么导致了这种
  • 将十六进制字符串转换(解码)为 ASCII 或任何其他可理解的格式 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 b 7668647866696c654d006900630072006f0073006f00660074002000570069006e00
  • 我如何让 Eclipse 将 .ejs 文件解释为 .html?

    我最近开始了一个节点项目 我使用的两个模块是express和EJS 但默认情况下我通常使用 eclipse 作为我的 IDE 它对于 java 运行良好 对于 html 和 javascript 也很不错 但我遇到的一个问题是 对于 ejs
  • 在 Vim 中打开特定文件的快捷方式?

    有没有办法在我的系统中配置快捷方式 vimrc自动在新缓冲区中打开特定文件 我有一个经常需要访问的文件 我想在编码或写入会话期间在新缓冲区中快速打开该文件 我并不是在寻找可以使用 Command T 或 PeepOpen 实现的模糊搜索 而
  • Android 发送包含 PDF 文件的邮件

    我正在尝试发送位于设备上文件夹中的 PDF 文件 文件已选择并发送 但它是空的 我哪里错了 String inviare n fr getText toString Uri uri Uri fromFile new File Environ