相关疑难解决方法(0)

用于存储文件的Android Open External Storage目录(sdcard)

我想打开外部存储目录路径以编程方式保存文件.我试过但没有获得SD卡路径.我怎么能这样做?有什么解决方案吗?

private File path = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + "");
Run Code Online (Sandbox Code Playgroud)

要么

private File path = new File(Environment.getExternalStorageDirectory() + "");
Run Code Online (Sandbox Code Playgroud)

我尝试从两个方法上面获取路径,但两者都指向内部存储器.

当我们打开存储器时,如果sdcard没有,它将显示如下 - 在此输入图像描述

设备存储和SD存储卡.

我想通过编码获得sd内存路径.我已经在清单中给予了许可 -

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Run Code Online (Sandbox Code Playgroud)

android sd-card android-sdcard android-external-storage

36
推荐指数
3
解决办法
23万
查看次数

检查SD卡是否存在,布尔值始终为真

在我的启动画面中,我想检查手机是否有SD卡.布尔语句位于:

    Boolean isSDPresent = android.os.Environment.getExternalStorageState()
            .equals(android.os.Environment.MEDIA_MOUNTED );
Run Code Online (Sandbox Code Playgroud)

所以,如果我的手机插槽中有SDCard,这个布尔值将返回true,到目前为止一直很好.当我从设置菜单转到"卸载SDCard"并删除SDCard,然后杀死应用程序并再次启动它时,布尔值也将为真.

如果我启动Astro File Manager后卸载并删除SD卡,我仍然可以访问/mnt/sdcard路径,为什么?

我怎样才能做到这一点?

提前致谢!

编辑

使用以下代码进行测试:

File path = Environment.getExternalStorageDirectory(); 
String pathS = path.getPath();
Run Code Online (Sandbox Code Playgroud)

当SDCard在插槽中时,pathS包含mnt/sdcard,但当我删除SDCard时pathS仍然是/mnt/sdcard......

android splash-screen android-sdcard

21
推荐指数
1
解决办法
1万
查看次数