/** * 获取手机内部存储空间 */ fungetInternalMemorySize(context: Context?): String? { val file = Environment.getDataDirectory() val statFs = StatFs(file.path) val blockSizeLong = statFs.blockSizeLong val blockCountLong = statFs.blockCountLong val size = blockCountLong * blockSizeLong return Formatter.formatFileSize(context, size) }
/** * 获取手机内部可用存储空间 */ fungetAvailableInternalMemorySize(context: Context?): String? { val file = Environment.getDataDirectory() val statFs = StatFs(file.path) val availableBlocksLong = statFs.availableBlocksLong val blockSizeLong = statFs.blockSizeLong return Formatter.formatFileSize(context, availableBlocksLong * blockSizeLong) }
/** * 获取手机存储已使用率 */ fungetUsedMemorySizeRate(context: Context?): Int { val file = Environment.getDataDirectory() val statFs = StatFs(file.path) val blockSizeLong = statFs.blockSizeLong val blockCountLong = statFs.blockCountLong val availableBlocksLong = statFs.availableBlocksLong
// 内部存储空间 val memorySizeStr = Formatter.formatFileSize( context, blockCountLong * blockSizeLong) // 可用内部存储空间 val availableMemorySizeStr = Formatter.formatFileSize( context, availableBlocksLong * blockSizeLong)