package com.example.smart.oss.image import android.content.Context import com.bumptech.glide.Glide import com.bumptech.glide.GlideBuilder import com.bumptech.glide.Registry import com.bumptech.glide.annotation.GlideModule import com.bumptech.glide.module.AppGlideModule import java.io.InputStream @GlideModule class CustomGlideModule : AppGlideModule() { override fun registerComponents(context: Context, glide: Glide, registry: Registry) { registry.prepend(String::class.java, InputStream::class.java, AliyunOSSModelLoaderFactory()) } override fun applyOptions(context: Context, builder: GlideBuilder) { super.applyOptions(context, builder) var defaultMemoryCacheSize = 8 * 1024 * 1024L val runtimeMemoryCacheSize = Runtime.getRuntime().maxMemory() / 8 val defaultDiskCacheSize = 250 * 1024 * 1024L if (runtimeMemoryCacheSize > defaultDiskCacheSize) { defaultMemoryCacheSize = runtimeMemoryCacheSize } } }