From a1a34819398536e9c39d6d2ac1f0d3c4f736f062 Mon Sep 17 00:00:00 2001 From: chenjuntao Date: Mon, 24 Jun 2019 10:59:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20BiResponse?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/ReservationRepository.kt | 4 --- .../java/com/gh/gamecenter/MainActivity.java | 27 +++---------------- .../com/gh/gamecenter/game/GameViewModel.kt | 4 --- .../rating/edit/RatingEditActivity.kt | 3 --- .../packagehelper/PackageRepository.kt | 6 +---- .../com/gh/gamecenter/retrofit/BiResponse.kt | 4 ++- .../gh/gamecenter/retrofit/EmptyResponse.kt | 21 +++++++++++++++ 7 files changed, 28 insertions(+), 41 deletions(-) create mode 100644 app/src/main/java/com/gh/gamecenter/retrofit/EmptyResponse.kt diff --git a/app/src/main/java/com/gh/common/repository/ReservationRepository.kt b/app/src/main/java/com/gh/common/repository/ReservationRepository.kt index b417954426..8f13131e91 100644 --- a/app/src/main/java/com/gh/common/repository/ReservationRepository.kt +++ b/app/src/main/java/com/gh/common/repository/ReservationRepository.kt @@ -42,10 +42,6 @@ object ReservationRepository { mReservationSet = HashSet(data) } - override fun onFailure(exception: Exception) { - // do nothing - } - }) } } diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index 7c8d457365..cdb19a7160 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -76,7 +76,7 @@ import com.gh.gamecenter.normal.NormalFragment; import com.gh.gamecenter.packagehelper.PackageRepository; import com.gh.gamecenter.packagehelper.PackageViewModel; import com.gh.gamecenter.qa.AskFragment; -import com.gh.gamecenter.retrofit.BiResponse; +import com.gh.gamecenter.retrofit.EmptyResponse; import com.gh.gamecenter.retrofit.Response; import com.gh.gamecenter.retrofit.RetrofitManager; import com.gh.gamecenter.suggest.SuggestType; @@ -97,7 +97,6 @@ import com.tencent.bugly.crashreport.CrashReport; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; -import org.jetbrains.annotations.NotNull; import org.json.JSONObject; import java.io.BufferedReader; @@ -876,17 +875,7 @@ public class MainActivity extends BaseActivity { .postNewlyInstalledApp(HaloApp.getInstance().getGid(), requestBody) .subscribeOn(Schedulers.io()) .observeOn(Schedulers.io()) - .subscribe(new BiResponse() { - @Override - public void onSuccess(ResponseBody data) { - // do nothing - } - - @Override - public void onFailure(@NotNull Exception exception) { - exception.printStackTrace(); - } - }); + .subscribe(new EmptyResponse<>()); } @SuppressLint("CheckResult") @@ -900,17 +889,7 @@ public class MainActivity extends BaseActivity { .deleteInstalledApp(HaloApp.getInstance().getGid(), packageName) .subscribeOn(Schedulers.io()) .observeOn(Schedulers.io()) - .subscribe(new BiResponse() { - @Override - public void onSuccess(ResponseBody data) { - // do nothing - } - - @Override - public void onFailure(@NotNull Exception exception) { - exception.printStackTrace(); - } - }); + .subscribe(new EmptyResponse<>()); } // 接收登录和登出更新事件统计的 Meta diff --git a/app/src/main/java/com/gh/gamecenter/game/GameViewModel.kt b/app/src/main/java/com/gh/gamecenter/game/GameViewModel.kt index 32d4957dab..4008352340 100644 --- a/app/src/main/java/com/gh/gamecenter/game/GameViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/game/GameViewModel.kt @@ -116,10 +116,6 @@ class GameViewModel(application: Application, var blockData: SubjectRecommendEnt override fun onSuccess(data: WelcomeDialogEntity) { openingDialog.postValue(data) } - - override fun onFailure(exception: Exception) { - // do nothing. - } }) } diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt index a6eecb0795..7e025277ea 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/rating/edit/RatingEditActivity.kt @@ -171,9 +171,6 @@ class RatingEditActivity : BaseActivity() { val json = JSONObject(data.string()) mBinding.deviceName.text = json.getString("alias") } - - override fun onFailure(exception: Exception) { - } }) } diff --git a/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt b/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt index 8447602833..eef06a3149 100644 --- a/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt +++ b/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt @@ -1,9 +1,9 @@ package com.gh.gamecenter.packagehelper import android.annotation.SuppressLint -import androidx.lifecycle.MutableLiveData import android.preference.PreferenceManager import android.text.TextUtils +import androidx.lifecycle.MutableLiveData import com.gh.common.util.* import com.gh.gamecenter.R import com.gh.gamecenter.entity.AppEntity @@ -142,10 +142,6 @@ object PackageRepository { override fun onSuccess(data: ResponseBody) { SPUtils.setLong(LAST_UPLOAD_APPLIST_TIME, System.currentTimeMillis() / 1000) } - - override fun onFailure(exception: Exception) { - exception.printStackTrace() - } }) } } diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/BiResponse.kt b/app/src/main/java/com/gh/gamecenter/retrofit/BiResponse.kt index 2fd2028df7..f5de5b3e8a 100644 --- a/app/src/main/java/com/gh/gamecenter/retrofit/BiResponse.kt +++ b/app/src/main/java/com/gh/gamecenter/retrofit/BiResponse.kt @@ -22,6 +22,8 @@ abstract class BiResponse : BiConsumer { abstract fun onSuccess(data: T) - abstract fun onFailure(exception: Exception) + open fun onFailure(exception: Exception) { + // 不管是否重写此方法,错误的 stackTrace 都会输出到 Logcat + } } \ No newline at end of file diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/EmptyResponse.kt b/app/src/main/java/com/gh/gamecenter/retrofit/EmptyResponse.kt new file mode 100644 index 0000000000..ed8493c9fc --- /dev/null +++ b/app/src/main/java/com/gh/gamecenter/retrofit/EmptyResponse.kt @@ -0,0 +1,21 @@ +package com.gh.gamecenter.retrofit + +import com.lightgame.utils.Utils +import io.reactivex.functions.BiConsumer + +/** + * 不需要使用请求成功后返回的数据,也不对请求异常进行处理的请求可以用这个 [EmptyResponse] + */ +class EmptyResponse : BiConsumer { + + override fun accept(t: T?, throwable: Throwable?) { + if (t != null) Utils.log(t) + + if (throwable != null) { + throwable.printStackTrace() + } else { + Utils.log("Something serious has happened!") + } + } + +} \ No newline at end of file