android - 无法在一台 android 8 设备上打开 SAF OPEN_DODUMENT 对话框
问题描述
怎么会这样?从 android 5 开始,这应该总是有效的,不是吗?
例外
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.OPEN_DOCUMENT_TREE flg=0x43 (has extras) }
这发生在运行 android 8的HTC U12+上。
代码
public static void selectFolder(Activity activity, int requestCode, boolean localOnly)
{
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
intent.putExtra(Intent.EXTRA_LOCAL_ONLY, localOnly);
intent.addFlags(Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
activity.startActivityForResult(intent, requestCode);
}
解决方案
推荐阅读
- machine-learning - 在 Tensorflow.js 中使用卷积层预处理图像
- sql - 将 DateTimePicker 时间格式值设置为从数据库 VB.NET 返回的值
- laravel - Laravel SMTP 邮件发送
- r - R 中的 if、else if、else 语句和逻辑运算符以及创建函数
- sql - 找出 2 个表之间的差异
- c# - 如何构建在unity/c#中导入的c++ dll
- string - 我无法使用模板在一个字符串中获取两个字符串值
- c# - C# 中的 SP 问题:需要未提供的参数“@Image”
- python - mysql 与
无法创建表 - javascript - Vuejs 在使用 v-if 打开和关闭时丢失其 @click 绑定处理程序