首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内存卡不存在仍然内存检查返回true

内存卡不存在仍然内存检查返回true
EN

Stack Overflow用户
提问于 2013-06-04 19:13:04
回答 2查看 561关注 0票数 1

我正面临一些奇怪的问题,关于记忆卡是否存在。我正在检查IsSDCARD在我的google nexus设备上是否恢复为真,但是当我尝试使用文件资源管理器从eclipse访问存储卡时,它在mnt文件夹中显示没有存储卡(存储卡前的阵列不存在)....Here是我的代码,请帮助

代码语言:javascript
复制
  public static boolean isSDCardMounted() {
    Boolean isSDPresent = android.os.Environment.getExternalStorageState()
            .equals(android.os.Environment.MEDIA_MOUNTED);
    Log.d("Tag", "SDCARD PRESENT....." + isSDPresent);
    return isSDPresent;
}

 if (!DownLoadFile.isSDCardMounted()) {
            CommonFunctions.showAlerts(MainActivity.this,
                    "SD Card Not Available");
            if (progressDialog.isShowing())
                progressDialog.dismiss();
            cancel(true);
        }

请帮帮忙……

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-04 19:23:26

检查

代码语言:javascript
复制
public static boolean isExternalStorageRemovable ()

在API级别9中添加

返回主“外部”存储设备是否可移除。如果返回true,则该设备例如是用户可以移除的SD卡。如果返回false,则存储内置于设备中,无法物理移除。

Environment.getExternalStorageDirectory()指的是设备制造商认为是“外部存储”的任何东西。在某些设备上,这是可移动介质,如SD卡。在一些设备上,这是设备上闪存的一部分,@CommonsWare在这里https://stackoverflow.com/a/5695129/786337已经回答了更多

https://stackoverflow.com/a/15612964/786337

票数 1
EN

Stack Overflow用户

发布于 2013-06-04 19:23:31

使用下面的代码行使用"Using the External Storage"中描述的Environment.getExternalStorageState()。

要获取外部存储上的可用空间,请使用StatFs

代码语言:javascript
复制
// do this only *after* you have checked external storage state:
File extdir = Environment.getExternalStorageDirectory();
File stats = new StatFs(extdir.getAbsolutePath());
int availableBytes = stats.getAvailableBlocks() * stats.getBlockSize();

检查存储卡所有细节的代码在下面的http://sapienmobile.com/?p=204中提到

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16916353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档