android - 我想检查手机是否包含 SD 卡,如果 SD 卡不可用,以下方法总是返回 true

标签 android android-studio

我使用以下方法检查手机是否包含 SD 卡,但如果 SD 卡不可用,问题总是返回 true,请帮助我。

Boolean isSDPresent = android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);

        if(isSDPresent)
        {
          // yes SD-card is present
            Toast.makeText(getApplicationContext(), "SD card available ", 2000).show();
        }
        else
        {
         // Sorry
            Toast.makeText(getApplicationContext(), "SD card not available ", 2000).show();
        }

最佳答案

它返回 true 因为 getExternalStorage() 返回内存中的虚拟 SD 卡。

你可以使用

Boolean isSDPresent = android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED) 
     && Environment.isExternalStorageRemovable();

检查SD卡是否可移动

关于android - 我想检查手机是否包含 SD 卡,如果 SD 卡不可用,以下方法总是返回 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36856169/

相关文章:

android - 如何知道用户已从应用程序中的 1 个位置单击任何 Activity 屏幕

android - 改造 404 未找到 Web api

android - 错误: Opening Emulator handleCpuAcceleration after Upgrading Android Studio Arctic Fox

android - LinearLayout 中的 ImageViews - 弄乱比例

java - 使用 observeOn() Android UI 线程使我的模拟器测试崩溃

Android - 从数据库中获取图像 url 并在 ImageView 中显示该图像

java - 如何获得 java_proto_library 的 1.7 兼容输出?

java - 保持登录 CheckBox Android

android - 我无法在 Android Studio 中设置 JDK 1.8

android - 命令git完成,退出值非零128