android - 如何在内部存储中为其他使用 android 的应用程序公开共享文件?
问题描述
我想在我的内部存储中创建一个 CSV 文件,其他应用程序可以访问该文件。我使用的代码是
public final static String fileName = "data.csv";
public final static String path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS).getPath() + "/zfapp/";
上面创建到类中的变量
new File(path).mkdir();
File file = new File(path , fileName);
if (!file.exists())
file.createNewFile();
上面的代码用于在文件不存在时创建文件。当我使用而不是上面的代码时,这段代码对我有用。
public final static String path = Environment.getDataDirectory() + "/data/com.santechs.zfapp1/files/" ;
但我需要使用 Gmail 应用程序将此文件作为电子邮件附件发送,因此我无法访问该文件,因为上面的行将在私有应用程序文件夹中创建一个文件,外部应用程序无法访问。
解决方案
推荐阅读
- python - 过滤和替换 Pandas 中的子字符串
- linux - 如何在 Linux Shell 脚本中替换从另一个文件中获取输入的字符串
- java - 如何通过 URI 复制文件
- java - Springboot 调用 ESAPI 显示异常
- jquery - Rails 5:如何运行 edit.js.erb 文件
- java - 使用@AllowFeature 控制器方法播放Framework 1.x 功能测试
- c# - c#设置gcServer启用后不创建转储文件
- typescript - 打字稿 find() 并返回索引
- node.js - 将 GraphQL Schema 公开为 REST api 的方法有哪些?
- typescript - 无法在开玩笑的单元测试中模拟分页功能