gpt4 book ai didi

android - ACTION_GET_CONTENT Intent 不显示外部存储

转载 作者:搜寻专家 更新时间:2023-11-01 08:26:56 27 4
gpt4 key购买 nike

我正在为我的 Android 应用实现导入功能。我想让用户选择他们想要从设备上的外部存储(确切地说是下载目录)和其他在线文件存储(例如 DropBox 和 Google Drive)导入的文件。

我在一个模拟器和两个安卓设备上实现并测试了它。当我在模拟器 Android 版本 6.0 上测试它时,由于它没有安装 DropBox 和 GoogleDrive,我看到了我所期待的,它能够从下载目录中选择一个文件: enter image description here

当我在 Google Pixel 手机 Android 版本 7.1.2 上测试它时,一切都按我预期的那样运行。我可以从下载目录、Google Drive 和 DropBox 中选择一个文件: enter image description here

但是,当我在 Samsung Galaxy 4 设备 Android 版本 5.0.1 上测试它时,我可以从 Google Drive 和 Dropbox 中选择一个文件,但我没有从中选择文件的选项我的下载目录: enter image description here

这是我选择文件的代码:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("text/*");
startActivityForResult(intent, GET_FILE_RESULT_CODE);

请告诉我如何解决此问题。谢谢!

最佳答案

我最终使用了 ACTION_OPEN_DOCUMENT 来解决问题。现在我也可以从我的外部存储中为 Android 5.0.1 选择文件。

然而,ACTION_OPEN_DOCUMENT仅支持 API 19 及更高版本。

这就是我所做的:

if (Build.VERSION.SDK_INT >= 19) {
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.setType("text/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent, GET_FILE_RESULT_CODE);
}
else {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("text/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent, GET_FILE_RESULT_CODE);
}

希望这可以帮助遇到同样问题的人。如果有人知道为什么我无法获得 ACTION_GET_CONTENT,也请告诉我从适用于 Android 5.0.1 的外部存储中进行选择。谢谢!

关于android - ACTION_GET_CONTENT Intent 不显示外部存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44059889/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com