如何将文件存储在android存储的comman路径中?

如何将文件存储在android存储的comman路径中?,android,android-sdcard,Android,Android Sdcard,问题在于 我的应用程序下载的内容,如音频,视频和图像下载是完美的工作 但当我使用联想移动设备时,下载不起作用 还有我发现的问题。。。sd卡名称路径是/sdcard0,我的完美下载正在/sdcard/路径中运行 更重要的是,我下载的内容大约有2GB的数据。。。 而且有些设备没有更多的存储空间,它需要从外部sd卡获得更多的空间 我该怎么办。。。。我的应用被下载了很多设备。现在问题出现了 一个大问题 当我把下载的内容写在sd卡上时,写起来很容易。。但大多数移动设备都不会写入sd卡 如果是,则仅为路径工

问题在于

我的应用程序下载的内容,如音频,视频和图像下载是完美的工作

但当我使用联想移动设备时,下载不起作用

还有我发现的问题。。。sd卡名称路径是/sdcard0,我的完美下载正在/sdcard/路径中运行

更重要的是,我下载的内容大约有2GB的数据。。。 而且有些设备没有更多的存储空间,它需要从外部sd卡获得更多的空间

我该怎么办。。。。我的应用被下载了很多设备。现在问题出现了

一个大问题

当我把下载的内容写在sd卡上时,写起来很容易。。但大多数移动设备都不会写入sd卡

如果是,则仅为路径工作

我给了一条这样的路 儿童圣经/SD卡/儿童圣经/图片/

在多个设备中,它将正常工作。。。。但在某些情况下,设备无法正常工作

帮帮我


我有大麻烦了

用它来找到通往SD卡的路径。

对不起,我不得不笑了,但我同情你

您可以发布您当前选择的路径的代码吗

您能否澄清一下,您的主要问题是选择具有足够空间的外部存储路径

android有两个位置

a) 内部的

b) 外部(某些设备上仍在设备上)

c) 外部(某些设备上的SD卡)

选项C是特定于设备的

无论哪种方式,都可以使用

这是我用来查找最佳缓存目录的函数(对于图片,只需将subdir更改为最合适的即可)


请按此操作,可能会对您有所帮助

这里是一些为设备提供的硬编码路径,要获取路径,请使用
Environment.getExternalStorageDirectory


在我的链接中有两个链接也读取它们

再次出现一个问题,当我清除catch时,所有下载的数据都将丢失是的,你是对的,你无法阻止此…如果你清除它,所有数据都将丢失..这取决于你想将数据保存到哪里..内部还是外部..在外部,你可以防止数据丢失clear以及我们如何将数据存储在与data/data/applicationcontext/myfile/MyFile2相同的外部我认为您没有通过我的给定链接…..您需要为您的外部SD卡指定路径。好的,现在它将得到解决,但我再次遇到一个问题,当我清除捕获时,所有下载内容将从Rok中删除,现在问题解决了,但当我清除捕获时,我又遇到了一个问题,然后所有下载内容都将从中删除,并且我还可以在Android/data/ApplicationContext/myfile/myfile2中看到其他一些应用商店内容
public static File getBestExtDir(Context applicationContext) {
    File path;

    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
        path = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "Pictures");
    }
    else {
        //lets try internal storage
        path = applicationContext.getCacheDir();
    }

    if (path.exists()) {
        return path;
    }
    if (path.mkdirs()) {
        return path;
    }

    return null;
}