Android Coil 3拦截器Interceptor计算单次请求耗时,Kotlin
import android.content.Context
import android.util.Log
import coil3.intercept.Interceptor
import coil3.request.ImageResult
class MyInterceptor : Interceptor {
companion object {
const val TAG = "fly/MyInterceptor"
}
private var mCtx: Context? = null
constructor(ctx: Context) {
mCtx = ctx
}
override suspend fun intercept(chain: Interceptor.Chain): ImageResult {
val t = System.currentTimeMillis()
val result = chain.proceed()
Log.d(TAG, "耗时:${System.currentTimeMillis() - t} ms, ${chain.request.data}")
return result
}
}
mImageLoader = ImageLoader.Builder(ctx)
...
.components {
...
add(MyInterceptor(ctx))
}.build()
Android Coil3视频封面抽取封面帧存Disk缓存,Kotlin(2)-CSDN博客文章浏览阅读444次,点赞9次,收藏14次。本文介绍了基于Coil3的Android视频封面抽取优化方案,重点改进了磁盘缓存性能。通过将封面帧从PNG无损格式改为JPEG有损压缩(质量80),使缓存文件大小缩减至原先的1/10,显著提升了读写速度。核心实现包括:1)使用FFmpegMediaMetadataRetriever快速抽取视频首帧;2)自定义Bitmap压缩参数(Bitmap.CompressFormat.JPEG);3)采用缓冲流(BufferedOutputStream)处理磁盘缓存写入。该方案在保持图像质量的同时优化了I/O性能,适用
https://blog.csdn.net/zhangphil/article/details/150494282