java - 对不适用于 PDF 的应用程序的隐含意图
问题描述
我正在尝试将 PDF 文件从我的应用程序发送到 Whats 应用程序、Gmail 等。我可以使用下面提到的代码将其发送到 Telegram。但如果是 Whats 应用程序或 Gmail,我会收到“内容共享失败”、“无法附加文件”等错误消息。
pdf.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String urlPdf = takeScreenshot(true);
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(urlPdf));
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
shareIntent.setType(".pdf -> application/pdf");
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.sendto)));
}
});
我想知道代码中的问题(如果有的话)还是由于任何权限缺陷?请纠正。
解决方案
推荐阅读
- go - array of struct object not getting return in response
- .net - Publish WebApi to Azure when update to .Net 5.0 from .Net Core 3.1
- java - How to set fixed headers to the feign client instead of setting on request level
- sql - 如何选择所有未来的关闭时间?
- python - 使用影响其他配置参数的一个可自定义参数进行配置
- node.js - RXJS 加密大文件并发送到 AWS S3
- r - 如何使用 R 中的“huxtable”库为表格中所需的单元格着色。哪种方式更优雅?
- java - 从 URL 读取 XML 数据会引发 SAXParseException:文件过早结束
- c++ - 避免防病毒检测 C++
- java - 如何使用用java编写的PackageManager安装apk?