dco*_*ode 2 java android cordova
我在开发的应用程序在这里遇到了一个奇怪的问题。它使用Apache Codova 3.0.0和库存文件插件在具有Android 4.3的Samsung Galaxy Nexus的外部存储上创建目录,并在其中添加一些文件。
这里发生的是,我实际上可以执行此操作,但是当我将设备作为大容量存储设备连接到计算机时,创建的目录(包括文件)没有显示。除我创建的文件夹外,所有其他文件夹均正常显示。但是,当我使用“ adb shell”浏览设备时,我可以看到该文件夹,并且其来自“ ls -al”的目录模式与所有其他文件夹的模式完全相同。读取和写入权限被授予该应用程序。
我也在Android代码中尝试过相同的方法,其行为完全相同:
File f = new File(Environment.getExternalStorageDirectory().toString()+"/myFolder");
if (!f.isDirectory()) {
f.mkdir();
Log.i("myApp", "Created directory: "+f);
}
Run Code Online (Sandbox Code Playgroud)
该操作成功,但是当我将设备重新连接到计算机时,该文件夹再次不可见。提及一下:我从IDE运行应用程序-也许:是否有一个沙盒或我不知道的沙盒,可能会导致使用adb shell在/ sdcard中显示内容,但在连接为外部存储时却没有显示?
我想我必须在这里想念一些基本的东西,希望你们对我有一个答案:)
谢谢!
新文件和文件夹可能需要一些时间才能通过MTP显示。如果您可以通过看到文件夹adb,则您的代码运行良好。
Android会不时地进行MTP索引编制(我不确定确切的时间延迟),因此新文件在创建后不会立即显示。您可以尝试通过代码强制运行MediaScanner以强制建立索引,或重新启动设备。
| 归档时间: |
|
| 查看次数: |
2284 次 |
| 最近记录: |