DvrStorageStatusManager.java 文件源码

java
阅读 50 收藏 0 点赞 0 评论 0

项目:android_packages_apps_tv 作者:
/**
 * Returns the current storage status for DVR recordings.
 *
 * @return {@link StorageStatus}
 */
@AnyThread
public @StorageStatus int getDvrStorageStatus() {
    MountedStorageStatus status = mMountedStorageStatus;
    if (status.mStorageMountedDir == null) {
        return STORAGE_STATUS_MISSING;
    }
    if (CommonFeatures.FORCE_RECORDING_UNTIL_NO_SPACE.isEnabled(mContext)) {
        return STORAGE_STATUS_OK;
    }
    if (status.mStorageMountedCapacity < MIN_STORAGE_SIZE_FOR_DVR_IN_BYTES) {
        return STORAGE_STATUS_TOTAL_CAPACITY_TOO_SMALL;
    }
    try {
        StatFs statFs = new StatFs(status.mStorageMountedDir.toString());
        if (statFs.getAvailableBytes() < MIN_FREE_STORAGE_SIZE_FOR_DVR_IN_BYTES) {
            return STORAGE_STATUS_FREE_SPACE_INSUFFICIENT;
        }
    } catch (IllegalArgumentException e) {
        // In rare cases, storage status change was not notified yet.
        SoftPreconditions.checkState(false);
        return STORAGE_STATUS_FREE_SPACE_INSUFFICIENT;
    }
    return STORAGE_STATUS_OK;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号