我在mac上安装了“android file transfer”。我的应用程序创建了一个文件夹。我可以在我的Android设备中使用标准文件管理器访问它。它显示了许多文件夹,包括我的文件夹。
但问题是“android文件传输”会将我的文件夹显示为文件。
拔出设备或重新启动“android文件传输”没有帮助。
这是我创建文件的方式:
File folder = new File(Environment.getExternalStorageDirectory().getAbsoluteFile() +File.separator + "myFolder/");
boolean success = true;
if (!folder.exists()) {
success = folder.mkdirs();
}
我读到我需要这个:
MediaScannerConnection.scanFile(
getApplicationContext(),
new String[]{folder.getAbsolutePath()},
null,
new MediaScannerConnection.OnScanCompletedListener() {
@Override
public void onScanCompleted(String path, Uri uri) {
Log.v("tretretre",
"file " + path + " was scanned seccessfully: " + uri);
}
});
有人可以帮助我吗?
答案 0 :(得分:1)
迟到的回复,但我希望它可以帮助别人。
我今天遇到了同样的问题。似乎 Android文件传输应用程序正在处理由我们的应用程序创建的最后一级文件夹作为文件。 对我有用的唯一解决方案是在原始文件夹中添加一个新的最后一级文件夹。
而不是:
File folder = new File(Environment.getExternalStorageDirectory().getAbsoluteFile() +File.separator + "myFolder/");
执行:
File folder = new File(Environment.getExternalStorageDirectory().getAbsoluteFile() +File.separator + "myFolder/" + "myDummyFolder");
它也可能是隐藏的文件夹/文件,例如 .myDummyFolder ,以避免在文件管理器应用中显示它。