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
|
}
|
|
}
|
}
|