优化
This commit is contained in:
@@ -44,11 +44,9 @@ object ImageProvider {
|
|||||||
oldBitmap: Bitmap,
|
oldBitmap: Bitmap,
|
||||||
newBitmap: Bitmap?
|
newBitmap: Bitmap?
|
||||||
) {
|
) {
|
||||||
if (evicted) {
|
oldBitmap.recycle()
|
||||||
oldBitmap.recycle()
|
putDebug("ImageProvider: trigger bitmap recycle. URI: $key")
|
||||||
putDebug("ImageProvider: trigger bitmap recycle. URI: $key")
|
putDebug("ImageProvider : cacheUsage ${size()}bytes / ${maxSize()}bytes")
|
||||||
putDebug("ImageProvider : cacheUsage ${size()}bytes / ${maxSize()}bytes")
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,7 +88,7 @@ object ImageProvider {
|
|||||||
// inJustDecodeBounds如果设置为true,仅仅返回图片实际的宽和高,宽和高是赋值给opts.outWidth,opts.outHeight;
|
// inJustDecodeBounds如果设置为true,仅仅返回图片实际的宽和高,宽和高是赋值给opts.outWidth,opts.outHeight;
|
||||||
op.inJustDecodeBounds = true
|
op.inJustDecodeBounds = true
|
||||||
BitmapFactory.decodeFile(file.absolutePath, op)
|
BitmapFactory.decodeFile(file.absolutePath, op)
|
||||||
if (op.outWidth < 1 && op.outHeight < 1) {
|
if (op.outWidth <= 0 && op.outHeight <= 0) {
|
||||||
return Size(errorBitmap.width, errorBitmap.height)
|
return Size(errorBitmap.width, errorBitmap.height)
|
||||||
}
|
}
|
||||||
return Size(op.outWidth, op.outHeight)
|
return Size(op.outWidth, op.outHeight)
|
||||||
@@ -116,7 +114,10 @@ object ImageProvider {
|
|||||||
bitmap
|
bitmap
|
||||||
}.onFailure {
|
}.onFailure {
|
||||||
Coroutine.async {
|
Coroutine.async {
|
||||||
putDebug("ImageProvider: decode bitmap failed. path: ${vFile.absolutePath}\n$it", it)
|
putDebug(
|
||||||
|
"ImageProvider: decode bitmap failed. path: ${vFile.absolutePath}\n$it",
|
||||||
|
it
|
||||||
|
)
|
||||||
if (FileUtils.readText(vFile.absolutePath).isXml()) {
|
if (FileUtils.readText(vFile.absolutePath).isXml()) {
|
||||||
putDebug("ImageProvider: delete xml file. path: ${vFile.absolutePath}")
|
putDebug("ImageProvider: delete xml file. path: ${vFile.absolutePath}")
|
||||||
vFile.delete()
|
vFile.delete()
|
||||||
|
|||||||
Reference in New Issue
Block a user