假设设备运行Marshmallow(API 23),我的应用程序使用
getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS)
并且设备上显示的路径(在用户屏幕中)是:
/storage/emulated/0/Android/data/<app>/files/Documents/<mydir>/<myfile>
并且用户创建的文件存在于该目录中。
当我进入Windows资源管理器(设备连接为USB)时,我看到:
<mount point>\Card\Android\data\<app>\files\Documents
并且目录为空!
我想要完成的事情似乎很简单:
允许用户保存一个文件,该文件在作为USB设备连接时可通过PC访问,该文件位于一致且直观明显的路径中(例如所提到的安装点)。
然而,显然某处存在脱节,所以我正在寻求帮助。
只是为了增加混乱,当在API 19上运行模拟器时,相同的函数返回
/storage/sdcard/Android/data/<app>/files/Documents/<dir>/myfile.xml
最后,如果预期的行为无论在哪个设备级别都是相同的,那将是超级的 - 例如,文档可以准确地说明设备屏幕和Windows资源管理器上的内容。