获取Android位图字节数i(API级别18-28)

时间:2018-08-06 23:29:38

标签: java android kotlin

我不知道如何计算bitmap byteSize来管理内存。

我进行了很多搜索,但找不到正确且强大的方法来实现此目的。

我也听说过getByteCount()getAllocationByteCount()(在19岁及以上的人),但对我没有帮助。如果对我有帮助怎么办?

是获取Bitmap字节大小的可靠方法。

我的API Level18 - 28

谢谢。 (这个类似的问题在8年前问过,但对我没有帮助)

1 个答案:

答案 0 :(得分:0)

在KOTLIN中

/**
 * it return size of Bitmap in Bytes.
 */
fun Bitmap.size(): Int{
    val s = rowBytes * height
    if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT){
        return try {
            allocationByteCount
        } catch (npe: NullPointerException) {
            s
        }
    }
    return s
}