author:wangyimiao

desc:添加注释
master
yimiao 4 years ago
parent 33d7c35f67
commit e32f3a1f9d

@ -4,10 +4,21 @@ import android.annotation.SuppressLint
import android.app.Application import android.app.Application
import android.content.Context import android.content.Context
/**
* 基础Application
*
* @author wangym
* @since 2021/7/28
*/
@SuppressLint("StaticFieldLeak") @SuppressLint("StaticFieldLeak")
object CommonApplication : Application() { object CommonApplication : Application() {
private var commonContext: Context? = null private var commonContext: Context? = null
override fun onCreate() {
super.onCreate()
intLibs(this)
}
fun intLibs(context: Context) { fun intLibs(context: Context) {
commonContext = context commonContext = context
} }

@ -2,6 +2,12 @@ package com.common.commonlib.image.config
import com.bumptech.glide.MemoryCategory import com.bumptech.glide.MemoryCategory
/**
* 图片加载基础配置
*
* @author wangym
* @since 2021/7/28
*/
object GlideBaseConfig { object GlideBaseConfig {
enum class MemoryType(var memoryCategory: MemoryCategory) { enum class MemoryType(var memoryCategory: MemoryCategory) {

@ -4,6 +4,9 @@ import android.graphics.drawable.Drawable
/** /**
* 占位符配置 * 占位符配置
*
* @author wangym
* @since 2021/7/28
*/ */
class GlideHolderConfig { class GlideHolderConfig {
/** /**

@ -5,6 +5,9 @@ import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions
/** /**
* 转换配置 * 转换配置
* @param time 动画时长 * @param time 动画时长
*
* @author wangym
* @since 2021/7/28
*/ */
class GlideTransitionConfig(time: Int?) { class GlideTransitionConfig(time: Int?) {
val transition: DrawableTransitionOptions = if (time != null) { val transition: DrawableTransitionOptions = if (time != null) {

@ -8,9 +8,19 @@ import com.common.commonlib.image.config.GlideBaseConfig
/** /**
* 加载配置辅助类 * 加载配置辅助类
*
* @author wangym
* @since 2021/7/28
*/ */
object ConfigHelper { object ConfigHelper {
/**
* 带有过渡效果的加载
* @param requestBuilder 请求构建器
* @param transformations 过渡效果
*
* @return 请求构建器
*/
fun loadWithTransformation( fun loadWithTransformation(
requestBuilder: RequestBuilder<Drawable>, requestBuilder: RequestBuilder<Drawable>,
transformations: List<BitmapTransformation> transformations: List<BitmapTransformation>
@ -22,6 +32,13 @@ object ConfigHelper {
return temp return temp
} }
/**
* 带有缓存模式的加载
* @param requestBuilder 请求构建器
* @param loadingMode 加载缓存模式
*
* @return 请求构建器
*/
fun loadWithMod( fun loadWithMod(
requestBuilder: RequestBuilder<Drawable>, requestBuilder: RequestBuilder<Drawable>,
loadingMode: GlideBaseConfig.LoadMode loadingMode: GlideBaseConfig.LoadMode

@ -7,9 +7,19 @@ import com.common.commonlib.image.config.GlideHolderConfig
/** /**
* 全局配置适配器 * 全局配置适配器
*
* @author wangym
* @since 2021/7/28
*/ */
object GlobalConfigHelper { object GlobalConfigHelper {
/**
* 全局占位符配置
*/
var globalHolderConfig: GlideHolderConfig? = null var globalHolderConfig: GlideHolderConfig? = null
/**
* 全局过渡效果
*/
var globalTransition: DrawableTransitionOptions? = null var globalTransition: DrawableTransitionOptions? = null
fun loadWithGlobalConfig(requestBuilder: RequestBuilder<Drawable>): RequestBuilder<Drawable> { fun loadWithGlobalConfig(requestBuilder: RequestBuilder<Drawable>): RequestBuilder<Drawable> {

@ -6,7 +6,10 @@ import com.common.commonlib.image.config.GlideBaseConfig
import com.common.commonlib.image.config.GlideHolderConfig import com.common.commonlib.image.config.GlideHolderConfig
/** /**
* 加载器接口 * 图片加载器接口
*
* @author wangym
* @since 2021/7/28
*/ */
interface ILoader { interface ILoader {
@ -64,16 +67,19 @@ interface ILoader {
/** /**
* 清理内存缓存 * 清理内存缓存
* @param context 上下文
*/ */
fun clearMemoryCache(context: Context) fun clearMemoryCache(context: Context)
/** /**
* 清理磁盘缓存 * 清理磁盘缓存
* @param context 上下文
*/ */
fun clearDiskCache(context: Context) fun clearDiskCache(context: Context)
/** /**
* 清理所有缓存 * 清理缓存
* @param context 上下文
*/ */
fun clearAllCache(context: Context) fun clearAllCache(context: Context)
} }

@ -17,27 +17,54 @@ import kotlinx.coroutines.runBlocking
/** /**
* 图片加载类 * 图片加载类
*
* @author wangym
* @since 2021/7/28
*/ */
object ImageLoader : ILoader { object ImageLoader : ILoader {
/**
* 初始化Glide基础配置
*/
override fun init( override fun init(
context: Context, memoryCategory: GlideBaseConfig.MemoryType context: Context, memoryCategory: GlideBaseConfig.MemoryType
) { ) {
Glide.get(context).setMemoryCategory(memoryCategory.memoryCategory) Glide.get(context).setMemoryCategory(memoryCategory.memoryCategory)
} }
/**
* 设置全局占位符配置
* @param globalHolderConfig 占位符配置
*/
fun setGlobalConfig(globalHolderConfig: GlideHolderConfig) { fun setGlobalConfig(globalHolderConfig: GlideHolderConfig) {
GlobalConfigHelper.globalHolderConfig = globalHolderConfig GlobalConfigHelper.globalHolderConfig = globalHolderConfig
} }
/**
* 设置全局过渡效果
* @param transitionConfig 全局过渡配置
*/
fun setGlobalTransition(transitionConfig: GlideTransitionConfig) { fun setGlobalTransition(transitionConfig: GlideTransitionConfig) {
GlobalConfigHelper.globalTransition = transitionConfig.transition GlobalConfigHelper.globalTransition = transitionConfig.transition
} }
/**
* 加载图片
* @param context 上下文
* @param url 图片链接
* @param view 图片控件
*/
override fun load(context: Context, url: String?, view: ImageView) { override fun load(context: Context, url: String?, view: ImageView) {
loadWithMode(context, url, view, GlideBaseConfig.LoadMode.DEFAULT) loadWithMode(context, url, view, GlideBaseConfig.LoadMode.DEFAULT)
} }
/**
* 加载圆角图片
* @param context 上下文
* @param url 图片链接
* @param view 图片控件
* @param radius 圆角弧度
*/
override fun loadRound(context: Context, url: String?, view: ImageView, radius: Float) { override fun loadRound(context: Context, url: String?, view: ImageView, radius: Float) {
var request = GlobalConfigHelper.loadWithGlobalConfig(Glide.with(context).load(url)) var request = GlobalConfigHelper.loadWithGlobalConfig(Glide.with(context).load(url))
request = ConfigHelper.loadWithMod(request, GlideBaseConfig.LoadMode.DEFAULT) request = ConfigHelper.loadWithMod(request, GlideBaseConfig.LoadMode.DEFAULT)
@ -48,6 +75,13 @@ object ImageLoader : ILoader {
loadIntoView(request, view) loadIntoView(request, view)
} }
/**
* 以模式加载图片
* @param context 上下文
* @param url 图片链接
* @param view 图片控件
* @param loadingMode 加载模式
*/
override fun loadWithMode( override fun loadWithMode(
context: Context, context: Context,
url: String?, url: String?,
@ -59,6 +93,13 @@ object ImageLoader : ILoader {
loadIntoView(request, view) loadIntoView(request, view)
} }
/**
* 加载图片带有占位图
* @param context 上下文
* @param url 图片链接
* @param view 图片控件
* @param placeGlideHolder 占位图
*/
override fun loadWithPlaceHolder( override fun loadWithPlaceHolder(
context: Context, context: Context,
url: String, url: String,
@ -73,22 +114,39 @@ object ImageLoader : ILoader {
) )
} }
/**
* 加载进控件
* @param requestBuilder 请求构建器
* @param view 图片控件
*/
private fun loadIntoView(requestBuilder: RequestBuilder<Drawable>, view: ImageView) { private fun loadIntoView(requestBuilder: RequestBuilder<Drawable>, view: ImageView) {
requestBuilder.into(view) requestBuilder.into(view)
} }
/**
* 清理内存缓存
* @param context 上下文
*/
override fun clearMemoryCache(context: Context) { override fun clearMemoryCache(context: Context) {
GlobalScope.launch(Dispatchers.Main) { GlobalScope.launch(Dispatchers.Main) {
Glide.get(context).clearMemory() Glide.get(context).clearMemory()
} }
} }
/**
* 清理磁盘缓存
* @param context 上下文
*/
override fun clearDiskCache(context: Context) = runBlocking<Unit> { override fun clearDiskCache(context: Context) = runBlocking<Unit> {
launch(Dispatchers.Default) { launch(Dispatchers.Default) {
Glide.get(context).clearDiskCache() Glide.get(context).clearDiskCache()
} }
} }
/**
* 清理缓存
* @param context 上下文
*/
override fun clearAllCache(context: Context) = runBlocking<Unit> { override fun clearAllCache(context: Context) = runBlocking<Unit> {
GlobalScope.launch(Dispatchers.Main) { GlobalScope.launch(Dispatchers.Main) {
Glide.get(context).clearMemory() Glide.get(context).clearMemory()

@ -11,6 +11,9 @@ import java.io.InputStream
/** /**
* okhttp配置 * okhttp配置
*
* @author wangym
* @since 2021/7/28
*/ */
@GlideModule @GlideModule
class OkHttpLibraryGlideModule : LibraryGlideModule() { class OkHttpLibraryGlideModule : LibraryGlideModule() {

@ -2,6 +2,9 @@ package com.common.commonlib.log
/** /**
* 日志敏感信息处理 * 日志敏感信息处理
*
* @author wangym
* @since 2021/7/28
*/ */
object LogSecureHelper { object LogSecureHelper {

@ -2,6 +2,12 @@ package com.common.commonlib.log
import android.util.Log import android.util.Log
/**
* Log工具类
*
* @author wangym
* @since 2021/7/28
*/
object Logger { object Logger {
var commonTag = "" var commonTag = ""
var needSecurity = false var needSecurity = false

@ -18,6 +18,9 @@ import javax.net.ssl.SSLHandshakeException
/** /**
* 请求基类 * 请求基类
*
* @author wangym
* @since 2021/7/28
*/ */
open class BaseObserve<T> { open class BaseObserve<T> {
/** /**

@ -2,6 +2,9 @@ package com.common.commonlib.net
/** /**
* 请求回调 * 请求回调
*
* @author wangym
* @since 2021/7/28
*/ */
interface RequestCallBack<T> { interface RequestCallBack<T> {
fun onResult(result: T) fun onResult(result: T)

@ -11,6 +11,9 @@ import java.util.concurrent.TimeUnit
/** /**
* 网络请求管理器 * 网络请求管理器
*
* @author wangym
* @since 2021/7/28
*/ */
object RequestManager { object RequestManager {
/** /**

@ -5,6 +5,9 @@ import kotlinx.android.parcel.Parcelize
/** /**
* 基础响应类 * 基础响应类
*
* @author wangym
* @since 2021/7/28
*/ */
@Parcelize @Parcelize
open class BaseResponse : Parcelable { open class BaseResponse : Parcelable {

@ -2,6 +2,9 @@ package com.common.commonlib.net.bean
/** /**
* 请求参数 * 请求参数
*
* @author wangym
* @since 2021/7/28
*/ */
data class RequestParam(var baseUrl: String) { data class RequestParam(var baseUrl: String) {
var params: Map<String, String>? = null var params: Map<String, String>? = null

@ -14,6 +14,9 @@ import java.util.*
/** /**
* HOST拦截器:动态替换HOST * HOST拦截器:动态替换HOST
*
* @author wangym
* @since 2021/7/28
*/ */
class BaseUrlInterceptor : Interceptor { class BaseUrlInterceptor : Interceptor {
/** /**

@ -6,6 +6,9 @@ import okhttp3.Response
/** /**
* 公共请求拦截器 * 公共请求拦截器
*
* @author wangym
* @since 2021/7/28
*/ */
class RequestHeadInterceptor : Interceptor { class RequestHeadInterceptor : Interceptor {
/** /**

@ -1,11 +1,13 @@
package com.common.commonlib.net.interceptor package com.common.commonlib.net.interceptor
import android.util.Log
import okhttp3.Interceptor import okhttp3.Interceptor
import okhttp3.Response import okhttp3.Response
/** /**
* 响应头部拦截器 * 响应头部拦截器
*
* @author wangym
* @since 2021/7/28
*/ */
class ResponseHeadInterceptor(private var callBack: ResponseCallBack?) : Interceptor { class ResponseHeadInterceptor(private var callBack: ResponseCallBack?) : Interceptor {
override fun intercept(chain: Interceptor.Chain): Response { override fun intercept(chain: Interceptor.Chain): Response {

@ -10,6 +10,9 @@ import java.io.IOException
/** /**
* FTP工具类 * FTP工具类
*
* @author wangym
* @since 2021/7/28
*/ */
object FTPUtils { object FTPUtils {
/** /**

@ -6,6 +6,9 @@ import android.content.SharedPreferences
/** /**
* sharedPreference管理类 * sharedPreference管理类
*
* @author wangym
* @since 2021/7/28
*/ */
object SpManager { object SpManager {
const val HAS_INIT = "has_init" const val HAS_INIT = "has_init"

@ -7,6 +7,12 @@ import androidx.recyclerview.widget.RecyclerView;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
/**
* rv
*
* @author wangym
* @since 2021/7/28
*/
public class SpaceItemDecoration extends RecyclerView.ItemDecoration { public class SpaceItemDecoration extends RecyclerView.ItemDecoration {
/** /**
* *

Loading…
Cancel
Save