本文整理汇总了Java中android.os.StatFs.getFreeBlocks方法的典型用法代码示例。如果您正苦于以下问题:Java StatFs.getFreeBlocks方法的具体用法?Java StatFs.getFreeBlocks怎么用?Java StatFs.getFreeBlocks使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.os.StatFs
的用法示例。
在下文中一共展示了StatFs.getFreeBlocks方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getFreeStorageSpace
import android.os.StatFs; //导入方法依赖的package包/类
/**
* Gets the information about the free storage space, including reserved blocks,
* either internal or external depends on the given input
* @param storageType Internal or external storage type
* @return available space in bytes, -1 if no information is available
*/
@SuppressLint("DeprecatedMethod")
public long getFreeStorageSpace(StorageType storageType) {
ensureInitialized();
maybeUpdateStats();
StatFs statFS = storageType == StorageType.INTERNAL ? mInternalStatFs : mExternalStatFs;
if (statFS != null) {
long blockSize, availableBlocks;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
blockSize = statFS.getBlockSizeLong();
availableBlocks = statFS.getFreeBlocksLong();
} else {
blockSize = statFS.getBlockSize();
availableBlocks = statFS.getFreeBlocks();
}
return blockSize * availableBlocks;
}
return -1;
}
示例2: getSDCardFreeSize
import android.os.StatFs; //导入方法依赖的package包/类
/**
* 获取SD卡空闲空间大小(有多少空间还没被占用)
*
* @return
*/
public static long getSDCardFreeSize() {
long freeBlockCount;
long blockSize;
if (isSDCardMounted()) {
String dir = getSDCardBaseDir();
//StatFs是从C语言引过来的
StatFs statFs = new StatFs(dir);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
freeBlockCount = statFs.getFreeBlocksLong();//有多少块
blockSize = statFs.getBlockSizeLong();//每块有多大
} else {
freeBlockCount = statFs.getFreeBlocks();//有多少块
blockSize = statFs.getBlockSize();//每块有多大
}
return freeBlockCount * blockSize / 1024 / 1024; //总大小
}
return 0;
}
示例3: getFreeSpaceSize
import android.os.StatFs; //导入方法依赖的package包/类
public static Long getFreeSpaceSize(StatFs statFs) {
long freeSpaceSize = 0;
try {
if (VERSION.SDK_INT >= 18) {
freeSpaceSize = statFs.getFreeBlocksLong() * statFs.getBlockSizeLong();
} else {
freeSpaceSize = ((long) statFs.getFreeBlocks()) * ((long) statFs.getBlockSize());
}
} catch (Throwable e) {
LOG.w(TAG, "getScreenHeightWidth failed(Throwable): " + e.getMessage());
}
return Long.valueOf(freeSpaceSize);
}