Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 检查getExternalStorage()是否为真正的SD卡_Android - Fatal编程技术网

Android 检查getExternalStorage()是否为真正的SD卡

Android 检查getExternalStorage()是否为真正的SD卡,android,Android,我不清楚如何确保在调用getExternalStorage()时查询外部SD卡或手机的内部内存。是否有检查此问题的解决方案?方法 Environment.isExternalStorageRemovable() 你应该做你想做的 免责声明:我自己没有尝试过,只是在文档中查找了一下 编辑: 也可能有用。为什么要这样做?如果是SD卡,您是否希望做一些不同的事情?根据我自己的经验,我发现如果是内部存储,则为/storage/sdcard0,如果是外部SD卡,则通常为/storage/sdcard0

我不清楚如何确保在调用getExternalStorage()时查询外部SD卡或手机的内部内存。是否有检查此问题的解决方案?

方法

 Environment.isExternalStorageRemovable()
你应该做你想做的

免责声明:我自己没有尝试过,只是在文档中查找了一下

编辑:


也可能有用。

为什么要这样做?如果是SD卡,您是否希望做一些不同的事情?根据我自己的经验,我发现如果是内部存储,则为
/storage/sdcard0
,如果是外部SD卡,则通常为
/storage/sdcard0/external\u sdcard
,除非没有内部SD卡,否则外部SD卡SD卡是您从
环境中获得的。getExternalStorage
这通常是因为如果设备具有内部内存,则它是一个已装入的存储设备。当我想使用外部sd卡时,我需要
环境。getExternalStorage
然后检查
external\u sd卡
是否是该文件中的目录。我想给用户一个选择:将外部(大)文件下载到sd卡或内部内存。。。getExternalStorage()的名称中没有逻辑,在某些设备上它是内部存储器,在其他设备上它是sd卡…
getExternalStorage()
始终返回可以视为sd卡的内容。在一些手机上,它被模拟,但我不认为这个叫“内部内存”。虽然它可能使用相同的物理内存,但在逻辑上是不同的。让用户在真正的SD卡和模拟SD卡之间做出选择是没有实际意义的,特别是考虑到目前还没有同时拥有这两种SD卡的手机。您可以让用户在内部存储器和外部存储器之间进行选择,但不要使用术语“内部存储器”下的模拟外部存储器。
Environment.isExternalStorageEmulated()