안드로이드 스튜디오

[안드로이드 스튜디오 코틀린] 내부 저장소 용량, 사용 가능한 용량 구하는 예제

권송미 2023. 6. 22. 12:18
728x90
반응형

 

 

내부 저장소 용량과 사용 가능한 용량을 반환하는 함수를 만들어준다

 

// 내부 저장소 용량과 사용 가능한 용량을 반환 하는 함수
private fun getInternalStorageCapacity(): Pair<Long, Long> {
    val path = Environment.getDataDirectory().path
    val stat = StatFs(path)

    val blockSize: Long = stat.blockSizeLong
    val totalBlocks: Long = stat.blockCountLong
    val availableBlocks: Long = stat.availableBlocksLong

    val totalSize = blockSize * totalBlocks
    val availableSize = blockSize * availableBlocks

    return Pair(totalSize, availableSize)
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

onCreate에 위의 함수를 변수로 받아와, 텍스트로 출력하면

 

 

 

val storageCapacity = getInternalStorageCapacity()
if (storageCapacity != null) {
    val totalSize = storageCapacity.first
    val availableSize = storageCapacity.second
    println("내부 저장소 용량: ${totalSize / (1024 * 1024)} MB")
    println("사용 가능한 용량: ${availableSize / (1024 * 1024)} MB")
    binding.textView.text = "내부 저장소 용량: ${totalSize / (1024 * 1024)} MB, \n사용 가능한 용량: ${availableSize / (1024 * 1024)} MB"
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

위와 같이 출력이 잘 되는 것을 볼 수 있습니다.

 

 

 

 

 

 

 

 

728x90
반응형