普通用户
打开文件夹问题 [复制链接]
超级峰峰 发表于 2026-07-09 211 9

在安卓中,如何点击按钮打开指定文件夹的办法?

官方技术组 2026-07-30

老哥,别搞了,试了一上午,确实不行,Android 系统设计缺陷问题,选择文件会始终记住上一次(最后一次)选择的目录。下次打开选择文件前无论怎么设置初始目录,都还是会默认导航到上次打开的目录。

简单说就是:安卓系统规定,系统文件选择器没法设置初始目录,就算强行设置也无效。

原因如下:

1.EXTRA_INITIAL_URI 仅作为侧边栏目录树的 “定位提示”,不会切换当前浏览页面。

2.出于安全和隐私考虑,不提供 API 强制将文件选择器定位到特定目录。

3.DocumentsUI 会优先记住用户最后访问的位置(每个应用独立),并在下次打开时自动定位到该位置,以提高用户体验。

等后面有时间了,估计要单独封装一个自定义的文件选择器。

回复
超级峰峰 2026-07-29

我在一个页面中部署了12个按钮,每个按钮中部署一个文件选择器,需要这12个按钮分别记忆不同的路径,点击后分别到达不同的文件夹,现在的问题是,无法分别记忆路径,感觉像每记忆一次文件路径就把上次记忆的路径覆盖了,最后12个文件选择器只能到达同一个路径。

事件 按钮_5.被单击(来源对象  视图)
     '变量 文件选择1 = 创建 文件选择器()
   
    文件选择器_2.初始目录="/storage/emulated/0/Download/技术资料文件台账/党建园地"
    
    文件选择_2.记忆选择=
    文件选择器_2.打开("*/*")
结束 事件

事件 按钮_6.被单击(来源对象  视图)
     '变量 文件选择1 = 创建 文件选择器()
   
   文件选择器_3.初始目录="/storage/emulated/0/Download/技术资料文件台账/技术文件"
    
    文件选择_3.记忆选择=
    文件选择器_3.打开("*/*")
回复
官方技术组 2026-07-29
引用 @超级峰峰 的回复:

这个文件选择器对于我来说可以使用,但是遇到一个问题,记忆路径功能有问题,只能记忆一个路径,我创建了12个文件选择器,分别记忆保存路径,但是现在只记忆一个路径,我想要各保存各的路径,希望官方再优化一下。

设计规范只能实现单个对象保存一个选择的文件路径,另外什么需求场景会用到12个文件选择器啊?理论上每次选择文件不应该只是一个动作吗?也就是打开系统文件选择框一次性选择一个或多个文件。难道您是同时打开12个文件夹选择12个文件?感觉您的需求场景可以优化。

回复
超级峰峰 2026-07-29

这个文件选择器对于我来说可以使用,但是遇到一个问题,记忆路径功能有问题,只能记忆一个路径,我创建了12个文件选择器,分别记忆保存路径,但是现在只记忆一个路径,我想要各保存各的路径,希望官方再优化一下。

回复
官方技术组 2026-07-14

好的,“点击按钮,打开储存卡的某个文件夹,能让人看到里面有哪些文件...” 这个场景属于是文件选择器组件的功能了,文件选择器组件没有设置初始目录的属性,现已添加更新,更新包已经上传到原帖,可下载更新覆盖即可。

但是这个设置初始目录与目录选择器一样的,也要分手机,有的手机设置可能无效。

回复
超级峰峰 2026-07-14

您发的这种是选择文件夹的功能,到文件夹内点击选择按钮以后文件夹就自动关闭了,不能后续操作打开文件夹里的文件;我要的功能是:  点击按钮,打开储存卡的某个文件夹,能让人看到里面有哪些文件,并能点开文件查看信息就行了.

回复
官方技术组 2026-07-13

您好,原帖已新增相关功能:

1.目录选择器新增属性 标题、初始目录、记忆选择。

帖子地址:http://bbs.vcnstudio.com/?c=index&a=topic&tid=849&from=nt

需注意:

由于安卓碎片化相当严重,虽然新增加的这三个属性已经尽量适配各种机型,但是由于很多国产ROM(包括各种模拟器)上,因为厂商重写了DocumentsUI,不尊重原生安卓的 Intent 里面的很多标准,因此导致很多在需要使用意图(Intent)的场景才能实现的功能就会无效,而设置初始目录、设置选择标题文本就需要使用 Intent 的 EXTRA_ 参数,经过实际测试,模拟器几乎无效,真机可以,但无法保证所有真机都有效果,如果您的手机恰好无效,可以通过借助AI或自行修改更新包里面的文件源码做特别适配。

回复
超级峰峰 2026-07-12

可以使用,但是我要的实现像pc那样点击按钮直接打开固定路径的文件夹该怎么设置呢?

回复
官方技术组 2026-07-10

您好,可以用原生Java代码实现,但是安卓中选择文件夹处理回调比较复杂,加急封装了一个原生文件夹选择组件,文件及使用方式地址:http://bbs.vcnstudio.com/?c=index&a=topic&tid=849  您看下您那边能用不。

回复
 作者信息
超级峰峰
USB全栈版 云验证
专业开发指导服务

响应时间:5分钟

服务方式:官方1对1服务

工作时间:工作日 9:00 - 18:30

专业团队 · 开发指导 · 极速响应


官网 | 基础视频教程 | 在线文档 下载 VcnStudio IDE

© VcnStudio Inc All Rights Reserved

蜀ICP备17024229号