`
lufengdie
  • 浏览: 247827 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

获取Android手机中SD卡内存信息

阅读更多


SD卡作为手机的扩展存储设备,在手机中充当硬盘角色,可以让我们手机存放更多的数据以及多媒体等大体积文件。因此查看SD卡的内存就跟我们查看硬盘的剩余空间一样,是我们经常操作的一件事,那么在Android开发中,我们如何能获取SD卡的内存容量呢?接下来ATAAW.COM将做介绍。



首先,要获取SD卡上面的信息,必须先对SD卡有访问的权限,因此第一件事就是需要添加访问扩展设备的权限。

<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE">
</uses-permission>

其次,需要判断手机上面SD卡是否插好,如果有SD卡的情况下,我们才可以访问得到并获取到它的相关信息,当然以下这个语句需要用if做判断。

Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)

取得sdcard文件路径

File path = Environment.getExternalStorageDirectory();
StatFs statfs = new StatFs(path.getPath());

获取block的SIZE

long blocSize = statfs.getBlockSize();

获取BLOCK数量

long totalBlocks = statfs.getBlockCount();

空闲的Block的数量

long availaBlock = statfs.getAvailableBlocks();

计算总空间大小和空闲的空间大小

String[] total = csize(totalBlocks * blocSize);
String[] availale = csize(availaBlock * blocSize);

计算空间方法csize

String[] filesize(long size) {
        String str = "";
        if (size >= 1024) {
            str = "KB";
            size /= 1024;
            if (size >= 1024) {
                str = "MB";
                size /= 1024;
            }
        }
        DecimalFormat formatter = new DecimalFormat();
        formatter.setGroupingSize(3);
        String result[] = new String[2];
        result[0] = formatter.format(size);
        result[1] = str;
        return result;
    }

这样,SD卡上的总存储空间大小跟空闲的存储空间大小就被计算出来了

分享到:
评论

相关推荐

    Android开发之系统信息【1】——获取Android手机中SD卡存储信息

    综上所述,获取Android手机SD卡存储信息的过程主要包括申请权限、判断SD卡状态、获取`StatFs`对象以及计算存储空间。开发者可以根据需求调整代码,比如添加错误处理机制,或者适配不同Android版本的差异。了解这些...

    android手机获取SD卡信息代码

    在Android平台上,获取SD卡(外部存储)信息是开发者经常需要进行的操作,这涉及到对文件系统和设备存储的理解。在Android系统中,SD卡通常被视为外部存储,用于扩展设备的存储空间,允许用户存储多媒体文件、应用...

    android 获取手机外置内存卡

    当前只能用Environment.getExternalStorageDirectory()获取内置的SD卡路径,因为不同机型的系统SD卡的路径不相同,我拿三星s3试试,全是都只找到内置SD卡,后来通过获取系统进程名字找到内存卡路径。

    Android获取系统储存以及内存信息的方法(二)

    Android获取储存信息以及内存信息可以用adb命令查看。 adb查看系统内存信息以及储存信息: 命令:adb shell cat /proc/meminfo 代码: private static final String FILENAME_PROC_MEMINFO = /proc/meminfo; /*...

    Android开发WebView获取SD卡图片并显示

    本文将详细讲解如何在Android的WebView中加载并显示SD卡上的图片,以及如何解决自Android 4.4(KitKat)版本后出现的WebView无法直接访问SD卡图片的问题。 首先,我们需要理解Android 4.4引入的安全限制。从KitKat...

    android 读取外置和内置存储卡路径和大小

    在Android系统中,读取外置和内置存储卡的路径以及获取它们的大小是常见的需求,尤其是在处理多媒体文件或者管理应用程序数据时。本教程将详细解释如何实现这一功能。 首先,我们要了解Android对存储卡的分类。在...

    访问android 手机内存与存储卡

    在Android系统中,访问手机内存和存储卡涉及到了文件系统的操作,这包括读取、写入、创建和删除文件。Android设备通常拥有两种类型的存储空间:内部存储(Internal Storage)和外部存储(External Storage),也就是...

    获取SD卡 TF卡 内置 外置存储卡路径例子

    在Android系统中,获取SD卡或TF卡(外部存储卡)以及内置存储卡的路径是开发者经常遇到的任务,尤其在处理文件操作时。本示例提供了优化的方法,以提高读取速度,这对于处理大量数据或者频繁访问存储卡的应用至关...

    android获取SDcard内存空间

    在Android系统中,获取SD卡(外部存储)的内存空间信息是开发者经常遇到的需求,这有助于监控应用的存储使用情况,防止因存储不足导致的问题。本文将基于标题和描述提供的内容,详细介绍如何在Android中获取SD卡的...

    android中复制资源文件中的数据库文件到sd卡或内存源码

    在Android开发中,有时我们需要将预置的数据库文件与应用一起发布,并在应用程序首次启动时将其复制到外部存储(如SD卡)或内部存储(内存)中,以便于后续的操作和使用。这样的需求通常出现在那些需要提供初始数据...

    获取 Android 设备的系统信息 包含屏幕信息、内存信息、IMEI、存储、传感器、CPU等信息.zip

    在Android平台上,获取设备的系统信息是开发过程中常见的需求,这包括屏幕参数、内存状态、IMEI号码、存储空间、传感器信息以及CPU详情等。以下将详细解释如何获取这些信息。 1. **屏幕信息**: - 屏幕尺寸:通过`...

    android手机信息获取程序

    `SmsManager`提供了多种方法,如`getAllMessagesFromSIM()`和`getMessagesFromUri()`,用于获取存储在SIM卡或手机内存中的短信。 3. **权限申请**:在Android 6.0(API级别23)及以上版本,运行时权限管理变得严格...

    Android 读取SD卡中文件以及内存使用情况

    这篇博客“Android 读取SD卡中文件以及内存使用情况”详细介绍了如何在Android应用中读取SD卡上的文件以及监控内存使用状态。这篇文章将对这些关键知识点进行深入探讨。 首先,Android系统的外部存储提供了一个用于...

    Unity应用获取外置SD卡路径方法

    在Android 6.0(API级别23)及更高版本中,系统对存储访问进行了权限管理,因此获取外置SD卡路径前,需要确保在`AndroidManifest.xml`中添加了相应的权限: ```xml &lt;uses-permission android:name="android....

    获取SD手机内存容量

    在Android系统中,获取SD卡(也称为外部存储)的内存容量是一项常见的需求,尤其是在开发移动应用时。这里我们将详细探讨如何实现这个功能,并深入了解手机内存容量的相关知识。 首先,我们要明白Android设备上的...

    读写SD卡序列号

    在Android系统中,SD卡(Secure Digital Card)是常见的外部存储设备,用于扩展手机或平板电脑的存储空间。SD卡序列号是每张SD卡特有的一个唯一标识符,由制造商在生产时分配,通常用于验证卡的身份和合法性。在某些...

    Android判断获取内置外置sd卡demo

    在Android中,通常将手机内部的可扩展存储称为“内部存储”(Internal Storage),而插入手机的外部Micro SD卡被称为“外部存储”(External Storage)。早期版本的Android区分了“可卸载”的外部存储(Removable ...

    Android手机SD卡文件浏览器

    总结来说,"Android手机SD卡文件浏览器"是Android系统中不可或缺的一部分,它的实现涉及到文件系统的操作、用户界面的设计、权限管理以及性能优化等多个方面。开发者需要理解Android的文件系统结构,熟悉Java I/O...

    Android下数据持久化存储在自带内存与存储卡

    内部存储通常指的是设备自带的内存,而外部存储则通常指的是可移除的SD卡或者设备提供的模拟SD卡空间。 **内部存储** 内部存储是Android为每个应用提供私有的存储区域,它对于用户和其他应用是不可见的,提供了安全...

    android 将assets 下的文件复制到手机内存中

    在Android开发中,有时我们需要将应用内部的资源文件,如配置文件、数据库文件或静态数据等,复制到手机的外部存储(内存或SD卡)以便于应用运行时使用。这个过程通常涉及到Android的文件系统操作和权限管理。下面将...

Global site tag (gtag.js) - Google Analytics