From b1645f0fae7c64f25aafc65e3f267bcf0832f38d Mon Sep 17 00:00:00 2001 From: tongtongstudio Date: Fri, 4 Nov 2022 09:33:43 +0800 Subject: [PATCH] =?UTF-8?q?version:beta=20fix:=20update:=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 +- .../sn/network/NetInterfaceManager.java | 175 +++++++++++++----- .../com/fuying/sn/service/ManagerService.java | 56 +++--- .../fuying/sn/service/main/MainService.java | 3 +- .../res/layout-land/activity_screen_lock.xml | 50 ++--- .../res/layout-port/activity_screen_lock.xml | 50 ++--- 6 files changed, 212 insertions(+), 126 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 5964f71..274aa85 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -73,8 +73,8 @@ android { official { flavorDimensions "default" - versionCode 5 - versionName "1.4" + versionCode 6 + versionName "1.5" } } diff --git a/app/src/main/java/com/fuying/sn/network/NetInterfaceManager.java b/app/src/main/java/com/fuying/sn/network/NetInterfaceManager.java index 87da628..2ed2f71 100644 --- a/app/src/main/java/com/fuying/sn/network/NetInterfaceManager.java +++ b/app/src/main/java/com/fuying/sn/network/NetInterfaceManager.java @@ -608,7 +608,7 @@ public class NetInterfaceManager { public void getSnInfo(boolean refresh, BehaviorSubject lifecycle, ObserverCallback callback) { ConnectMode connectMode = ConnectMode.SIX_HOUR; if (refresh) { - connectMode = ConnectMode.ONE_MINUTE; + connectMode = ConnectMode.ONE_HOUR; } if (ConnectManager.getInstance().isNeedConnect(UrlAddress.SNINFO, connectMode)) { getSnInfo(lifecycle, callback); @@ -1360,36 +1360,76 @@ public class NetInterfaceManager { }); } + public void getBrowserWhiteList(boolean refresh, BehaviorSubject lifecycle, CompleteCallback callback) { + ConnectMode connectMode = ConnectMode.SIX_HOUR; + if (refresh) { + connectMode = ConnectMode.ONE_HOUR; + } + if (ConnectManager.getInstance().isNeedConnect(UrlAddress.SET_BROWSER_URL, connectMode)) { + getBrowserWhiteList(lifecycle, callback); + } else { + String jsonString = mCacheHelper.getAsString(UrlAddress.SET_BROWSER_URL); + //为 "" 是已经请求成功的 + if (jsonString == null) { + getBrowserWhiteList(lifecycle, callback); + } else { + Gson gson = new Gson(); + Type type = new TypeToken() { + }.getType(); + callback.onComplete(); + } + } + } + + public void getBrowserWhiteList(BehaviorSubject lifecycle, CompleteCallback callback) { + getBrowserControl() + .compose(RxLifecycle.bindUntilEvent(lifecycle, ActivityEvent.DESTROY)) + .subscribe(getBrowserWhiteListObserver(callback)); + } + + public void getBrowserWhiteList(CompleteCallback callback) { + getBrowserControl() + .subscribe(getBrowserWhiteListObserver(callback)); + } + /** * 获取浏览器黑白名单 */ public void getBrowserWhiteList() { getBrowserControl() - .subscribe(new Observer>() { - @Override - public void onSubscribe(@NonNull Disposable d) { - Log.e("getBrowserWhiteList", "onSubscribe: "); - } - - @Override - public void onNext(@NonNull BaseResponse response) { - setBrowserResponse(response); - } - - @Override - public void onError(@NonNull Throwable e) { - Log.e("getBrowserWhiteList", "onError: " + e.getMessage()); - onComplete(); - } - - @Override - public void onComplete() { - Log.e("getBrowserWhiteList", "onComplete: "); - new URLUtils(mContext).setBrowserList(); - } - }); + .subscribe(getBrowserWhiteListObserver(null)); } + public Observer> getBrowserWhiteListObserver(CompleteCallback callback) { + return new Observer>() { + @Override + public void onSubscribe(@NonNull Disposable d) { + Log.e("getBrowserWhiteList", "onSubscribe: "); + } + + @Override + public void onNext(@NonNull BaseResponse response) { + setBrowserResponse(response); + } + + @Override + public void onError(@NonNull Throwable e) { + Log.e("getBrowserWhiteList", "onError: " + e.getMessage()); + onComplete(); + } + + @Override + public void onComplete() { + Log.e("getBrowserWhiteList", "onComplete: "); + if (callback != null) { + callback.onComplete(); + } + new URLUtils(mContext).setBrowserList(); + } + }; + } + + private void setBrowserResponse(BaseResponse response) { if (response.code == 200) { //白名单 @@ -1416,31 +1456,73 @@ public class NetInterfaceManager { } } + + public void getBrowserLabel(boolean refresh, BehaviorSubject lifecycle, CompleteCallback callback) { + ConnectMode connectMode = ConnectMode.SIX_HOUR; + if (refresh) { + connectMode = ConnectMode.ONE_HOUR; + } + if (ConnectManager.getInstance().isNeedConnect(UrlAddress.SET_BROWSER_LABEL, connectMode)) { + getBrowserLabel(lifecycle, callback); + } else { + String jsonString = mCacheHelper.getAsString(UrlAddress.SET_BROWSER_LABEL); + //为 "" 是已经请求成功的 + if (jsonString == null) { + getBrowserLabel(lifecycle, callback); + } else { + Gson gson = new Gson(); + Type type = new TypeToken() { + }.getType(); + callback.onComplete(); + } + } + } + + public void getBrowserLabel(BehaviorSubject lifecycle, CompleteCallback callback) { + getLabelControl() + .compose(RxLifecycle.bindUntilEvent(lifecycle, ActivityEvent.DESTROY)) + .subscribe(getBrowserLabelObserver(callback)); + } + + public void getBrowserLabel(CompleteCallback callback) { + getLabelControl() + .subscribe(getBrowserLabelObserver(callback)); + } + + public void getBrowserLabel() { getLabelControl() - .subscribe(new Observer>() { - @Override - public void onSubscribe(@NonNull Disposable d) { - Log.e("getBrowserLabel", "onSubscribe: "); - } + .subscribe(getBrowserLabelObserver(null)); - @Override - public void onNext(@NonNull BaseResponse