如何访问/存储/模拟/ 0 /

问题描述 投票:23回答:15

我已经写了代码进行录音并保存到下面的文件位置。

private String getFilename() {
    String filepath = Environment.getExternalStorageDirectory().getPath();
    File file = new File(filepath, AUDIO_RECORDER_FOLDER);
    if (!file.exists()) {
        file.mkdirs();
    }
    return (file.getAbsolutePath() + "/" + System.currentTimeMillis() + file_exts[currentFormat]);
}

在logcat的,它给了我一个文件的位置作为

/storage/emulated/0/AudioRecorder/1436854479696.mp4

我无法找到我的SD卡上的文件位置。如何访问的位置?

android android-sdcard android-file
15个回答
8
投票

作为西仁说,你需要一个文件浏览器,看看你的目录。如果你扎根我强烈建议根探险家,否则ES文件浏览器是个不错的选择。


1
投票

在我的情况下,/存储/模拟/ 0 /对应于我的设备的根路径。例如,当我带着我的手机默认摄像机应用程序中的照片,图像自动保存/store/emulated/0/DCIM/Camera/mypicname.jpeg

例如,假设你要存储在图片/图片目录,即存在于根目录下的图片目录。所以,你使用下面的代码。

File storageDir = Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_PICTURES );

如果你想下面的参数保存在DCIM或下载目录中的图片,给上面显示的Environment.getExternalStoragePublicDirectory()方法。

Environment.DIRECTORY_DCIM
Environment.DIRECTORY_Downloads

然后指定你的形象的名字:

String imageFileName = "JPEG_" + timeStamp + "_";

然后,创建如下所示的文件对象。您指定后缀作为第二个参数。

File image = File.createTempFile(
            imageFileName,  // prefix
            ".jpg",         // suffix
            storageDir      // directory
);

1
投票

安卓建议您拨打Environment.getExternalStorageDirectory.getPath()而不是路径名称硬编码/sdcard/的。这将返回主共享/外部存储目录。所以,如果存储效仿,这将返回/storage/emulated/0。如果你寻求与文件浏览设备存储,上述目录将是/mnt/sdcard(证实的Xperia Z 2上运行的Android 6)。


0
投票

要从/存储恢复你的图片/模拟/ 0 /只需打开100Andro file..there你会看到你的照片,虽然你可能没有在你的电脑资源管理器中访问它们。有打开每个画面逐一去设定(三个点..)并保存图片。它将从那里你还可以使用你的浏览器中复制它们的Android文件“图片”现身。有没有“全部保存”功能,但是这样一定要做一个接一个,但它的作品。

QT


0
投票

https://productforums.google.com/forum/#!msg/nexus/WIcHUNQfRLU/ALpViG86AwAJ

先生昂贵的玩具说:很惊讶,这个问题仍然显示出来,因为它开始发生早蜂窝。

因此,/存储/模拟/ 0 / DCIM /摄像机是同一文件夹作为您的正常DCIM / Camera文件夹。它只是一个符号链接。因此,文件实际上是在正确的位置,你只是有摆烂的数据到数据库MediaStore的应用程序。

当从PC访问文件的实际列举了文件MediaStorage数据库。它不是拉动传统目录列表。所以你看到的是基于什么是在数据库和数据库的路径条目。在指着模拟目录数据库文件,因为它们被认为是重复其相同的物理目录的正常DCIM /相机不显示。这是怎么回事的是,有些写得不好的第三方应用程序都将项与/存储数据库/模拟/ 0 / DCIM /相机路径,而不是正确的根路径DCIM /相机。这意味着MTP服务无法看到它们,当你连上你的电脑。

平时要解决这个问题最简单的方法是只清除MediaStore数据库来获取坏条目从MediaStore数据库,并让系统重新索引文件并投入使用正确的路径数据库。

设置 - >应用程序打在右上角选择显示系统中查找介质存储,选择它,选择存储,然后清除数据查找外部存储,选择它3点菜单,选择存储,然后清除数据打开手机关机,打开手机的背面上,等待索引服务来重建数据。

当您完成这些文件应该显示适当的目录树,并从PC可见。根据手机上的文件的数量会需要10-20分钟来重建媒体数据库作为服务走电话簿,获得元数据,创建缩略图等。


0
投票

查看设备上的文件与设备文件浏览器

https://developer.android.com/studio/debug/device-file-explorer


-1
投票

使用命令//获取文件目录

Image image =new Image() { Source = file.Path };

然后在命令ADB拉//这里的映像文件的路径


24
投票

No need for third party apps

我的Android 6.0可以让我浏览实习生内存,而不需要第三方应用程序。我只是做*:

  1. “设置”
  2. “存储和USB”
  3. “国产”
  4. [让它加载有点...]
  5. [滚动一路下跌]
  6. “浏览”

*词可能不符合标准的英语版的,因为我只是自由地从葡萄牙翻译它们。

注:至少在我的手机,/storage/emulated/0不符合SD卡,但到实习生的记忆。此方法不适合我的外接卡的工作,但我从未与其他手机试了一下。

希望这可以帮助!


10
投票

你也可以使用Android Debug Bridge (adb)到您的文件从Android设备复制到计算机上的文件夹:

adb pull /storage/emulated/0/AudioRecorder/1436854479696.mp4 <folder_on_your_PC_e.g. c:/temp>

你可以从设备整体AudioRecorder文件夹复制:

adb pull /storage/emulated/0/AudioRecorder <folder_on_your_PC_e.g. c:/temp>

3
投票

插入您的设备和运行adb shell这将让您在设备上的命令外壳。您没有权限读取/storage/emulated/但既然你知道它在子目录0只是去cd /storage/emulated/0,你将能够环顾四周,互动,aspected。

注意:您可以通过无线方式使用adb以及


2
投票

尝试这个

private String getFilename() {
    String filepath = Environment.getExternalStorageDirectory().getPath();
    File file = new File(filepath + "/AudioRecorder" );
    if (!file.exists()) {
        file.mkdirs();
    }
    return (file.getAbsolutePath() + "/" + System.currentTimeMillis() + ".mp4");
}

2
投票

在仿真器,来查看设置该文件点击>存储>其它>安卓>数据> com.companyname.textapp>文件>下载。在这里,textapp是您正在使用的应用程序的名称。


2
投票

在这里,在/ mnt /壳被发现/模拟/ 0


1
投票

如果您使用的是Android设备监控和Android模拟器:我曾访问过下面的方法:数据/媒体/ 0 / enter image description here


1
投票

尝试从

ftp://ip_my_s5:2221/mnt/sdcard/Pictures/Screenshots

该点到/storage/emulated/0

© www.soinside.com 2019 - 2024. All rights reserved.