From 75f59fa9a615e3584694e820ff83503e8b72ea16 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期五, 14 三月 2025 16:55:31 +0800 Subject: [PATCH] refactor(generallibrary):重构网络请求模块 --- generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt | 31 +++++++++---------------------- 1 files changed, 9 insertions(+), 22 deletions(-) diff --git a/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt b/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt index 8837b74..0667e86 100644 --- a/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt +++ b/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt @@ -1,14 +1,9 @@ -package com.dayu.qiheonlinelibrary.net +package com.dayu.general.net import android.content.Context import android.util.Log import com.dayu.baselibrary.net.subscribers.ProgressSubscriber import com.dayu.baselibrary.net.subscribers.SubscriberListener -import com.dayu.general.net.ApiService -import com.dayu.general.net.BaseResponse -import com.dayu.general.net.MyJsonParser -import com.dayu.general.net.NetConstans -import com.dayu.general.net.RetrofitClient import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.functions.Function import io.reactivex.rxjava3.schedulers.Schedulers @@ -27,18 +22,10 @@ @Volatile private var apiManager: ApiManager? = null - fun init() { - if (apiManager == null) { - synchronized(ApiManager::class) { - if (apiManager == null) { - apiManager = ApiManager() - } - } - } - } - fun getInstance(): ApiManager { - return apiManager ?: throw IllegalStateException("ApiManager not initialized") + return apiManager ?: synchronized(this) { + apiManager ?: ApiManager().also { apiManager = it } + } } } @@ -132,11 +119,11 @@ val mySubscriber = ProgressSubscriber<BaseResponse<T>>(context, hideLoading, listener); observable - ?.subscribeOn(Schedulers.io()) - ?.map(mapResponse(tClass)) - ?.unsubscribeOn(Schedulers.newThread()) - ?.observeOn(AndroidSchedulers.mainThread()) - ?.subscribe(mySubscriber) + .subscribeOn(Schedulers.io()) + .map(mapResponse(tClass)) + .unsubscribeOn(Schedulers.newThread()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(mySubscriber) } private fun <T> mapResponse(tClass: Class<T>): Function<Any, BaseResponse<T>> { -- Gitblit v1.8.0