version:2.2.8

update:2021-10-09 18:36:39
fix:
add:增加白名单ip功能
This commit is contained in:
2021-10-09 18:37:48 +08:00
parent 827a3e0ee7
commit 588d815d7f
5 changed files with 376 additions and 323 deletions

View File

@@ -24,6 +24,7 @@ import com.mjsheng.myappstore.base.BaseApplication;
import com.mjsheng.myappstore.service.LogcatService;
import com.mjsheng.myappstore.utils.JGYUtils;
import com.mjsheng.myappstore.utils.Logutils;
import com.mjsheng.myappstore.utils.SPUtils;
import com.mjsheng.myappstore.utils.ServiceAliveUtils;
import com.mjsheng.myappstore.utils.StatusBarUtil;
import com.mjsheng.myappstore.utils.Utils;
@@ -114,6 +115,8 @@ public class HomeActivity extends AppCompatActivity {
// mAm.killBackgroundProcesses("com.android.documentsui");
BaseApplication.cleanJpushAlias();
BaseApplication.cleanJpushTag();
Logutils.e(TAG, "debugTest: SPUtils all " + SPUtils.getAll(this));
}
private void testRxhttp() {

View File

@@ -1044,129 +1044,129 @@ public class MainPresenter implements MainContact.Presenter {
mView.getBrowserListFinished("");
}
private void NewSetBrowserList() {
NetInterfaceManager.getInstance()
.getBrowserListSettingObservable()
.observeOn(Schedulers.io())
.compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY))
.subscribe(new Observer<BaseResponse<BrowserData>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Logutils.e(TAG + ":" + "NewSetBrowserList", "onSubscribe: ");
}
// private void NewSetBrowserList() {
// NetInterfaceManager.getInstance()
// .getBrowserListSettingObservable()
// .observeOn(Schedulers.io())
// .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY))
// .subscribe(new Observer<BaseResponse<BrowserData>>() {
// @Override
// public void onSubscribe(@NonNull Disposable d) {
// Logutils.e(TAG + ":" + "NewSetBrowserList", "onSubscribe: ");
// }
//
// @Override
// public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
// Logutils.e(TAG + ":" + "NewSetBrowserList", "onNext: ");
// if (browserDataBaseResponse.code == OK) {
// String white = browserDataBaseResponse.data.getWhite();
// String black = browserDataBaseResponse.data.getBlack();
// if (!TextUtils.isEmpty(white) && !TextUtils.isEmpty(black)) {
// Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", " ");
// //黑白名单同时存在时由以前的逻辑管控
// boolean whiteList = Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", white);
// Logutils.e(TAG + ":" + "setBrowserList", "setBrowserList white: " + white + ":" + whiteList);
// boolean blackList = Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", black);
// Logutils.e(TAG + ":" + "setBrowserList", "setBrowserList black: " + black + ":" + blackList);
// mView.getBrowserListFinished(white);
// } else if (TextUtils.isEmpty(white)) {
// //设置黑名单
// Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 1);
// Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", black);
// //白名单为空由新的管控执行
// mView.getBrowserListFinished("");
// Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
// } else if (TextUtils.isEmpty(black)) {
// Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", " ");
// //黑名单为空由旧的管控执行
// mView.getBrowserListFinished(white);
// Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
// }
// } else {
// //所有置空
// Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", " ");
// mView.getBrowserListFinished("");
// Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
// }
// }
//
// @Override
// public void onError(@NonNull Throwable e) {
// Logutils.e(TAG + ":" + "NewSetBrowserList", "onError: " + e.getMessage());
// onComplete();
// }
//
// @Override
// public void onComplete() {
// Logutils.e(TAG + ":" + "NewSetBrowserList", "onComplete: ");
// }
// });
// }
@Override
public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
Logutils.e(TAG + ":" + "NewSetBrowserList", "onNext: ");
if (browserDataBaseResponse.code == OK) {
String white = browserDataBaseResponse.data.getWhite();
String black = browserDataBaseResponse.data.getBlack();
if (!TextUtils.isEmpty(white) && !TextUtils.isEmpty(black)) {
Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", " ");
//黑白名单同时存在时由以前的逻辑管控
boolean whiteList = Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", white);
Logutils.e(TAG + ":" + "setBrowserList", "setBrowserList white: " + white + ":" + whiteList);
boolean blackList = Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", black);
Logutils.e(TAG + ":" + "setBrowserList", "setBrowserList black: " + black + ":" + blackList);
mView.getBrowserListFinished(white);
} else if (TextUtils.isEmpty(white)) {
//设置黑名单
Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 1);
Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", black);
//白名单为空由新的管控执行
mView.getBrowserListFinished("");
Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
} else if (TextUtils.isEmpty(black)) {
Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", " ");
//黑名单为空由旧的管控执行
mView.getBrowserListFinished(white);
Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
}
} else {
//所有置空
Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Settings.System.putString(mContext.getContentResolver(), "BlackBrowserArray", " ");
mView.getBrowserListFinished("");
Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
}
}
@Override
public void onError(@NonNull Throwable e) {
Logutils.e(TAG + ":" + "NewSetBrowserList", "onError: " + e.getMessage());
onComplete();
}
@Override
public void onComplete() {
Logutils.e(TAG + ":" + "NewSetBrowserList", "onComplete: ");
}
});
}
private void SetBrowserList() {
NetInterfaceManager.getInstance()
.getBrowserListSettingObservable()
.observeOn(Schedulers.io())
.compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY))
.subscribe(new Observer<BaseResponse<BrowserData>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Logutils.e(TAG + ":" + "SetBrowserList", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Logutils.e(TAG + ":" + "SetBrowserList", "onNext: ");
if (browserDataBaseResponse.code == OK) {
//白名单
String white = browserDataBaseResponse.data.getWhite();
if (!TextUtils.isEmpty(white)) {
String homePage = Settings.System.getString(mContext.getContentResolver(), "homepagURL");
if (!TextUtils.isEmpty(homePage) && !white.contains(homePage)) {
white += "," + homePage;
}
boolean whiteList = Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", white);
Logutils.e(TAG + ":" + "SetBrowserList", "setBrowserList white: " + white + " :" + whiteList);
String black = Settings.System.getString(mContext.getContentResolver(), "qch_webblack_url");
Logutils.e(TAG + ":" + "SetBrowserList", "getBrowserList black: " + black);
mView.getBrowserListFinished(white);
} else {
Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", " ");
mView.getBrowserListFinished("");
}
//黑名单
String black = browserDataBaseResponse.data.getBlack();
if (!TextUtils.isEmpty(black)) {
boolean blackList = Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", black);
Logutils.e(TAG + ":" + "SetBrowserList", "setBrowserList black: " + black + " :" + blackList);
String whiteList = Settings.System.getString(mContext.getContentResolver(), "DeselectBrowserArray");
Logutils.e(TAG + ":" + "SetBrowserList", "getBrowserList white: " + whiteList);
} else {
Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
}
} else {
mView.getBrowserListFinished("");
}
}
@Override
public void onError(@NonNull Throwable e) {
Logutils.e(TAG + ":" + "SetBrowserList", "onError: " + e.getMessage());
String whiteURLList = Settings.System.getString(mContext.getContentResolver(), "DeselectBrowserArray");
Logutils.e(TAG + ":" + "SetBrowserList", "whiteURLList: " + whiteURLList);
mView.getBrowserListFinished(whiteURLList);
}
@Override
public void onComplete() {
Logutils.e(TAG + ":" + "SetBrowserList", "onComplete: ");
}
});
}
// private void SetBrowserList() {
// NetInterfaceManager.getInstance()
// .getBrowserListSettingObservable()
// .observeOn(Schedulers.io())
// .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY))
// .subscribe(new Observer<BaseResponse<BrowserData>>() {
// @Override
// public void onSubscribe(@NonNull Disposable d) {
// Logutils.e(TAG + ":" + "SetBrowserList", "onSubscribe: ");
// }
//
// @Override
// public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
// Settings.System.putInt(mContext.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Logutils.e(TAG + ":" + "SetBrowserList", "onNext: ");
// if (browserDataBaseResponse.code == OK) {
// //白名单
// String white = browserDataBaseResponse.data.getWhite();
// if (!TextUtils.isEmpty(white)) {
// String homePage = Settings.System.getString(mContext.getContentResolver(), "homepagURL");
// if (!TextUtils.isEmpty(homePage) && !white.contains(homePage)) {
// white += "," + homePage;
// }
// boolean whiteList = Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", white);
// Logutils.e(TAG + ":" + "SetBrowserList", "setBrowserList white: " + white + " :" + whiteList);
// String black = Settings.System.getString(mContext.getContentResolver(), "qch_webblack_url");
// Logutils.e(TAG + ":" + "SetBrowserList", "getBrowserList black: " + black);
// mView.getBrowserListFinished(white);
// } else {
// Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", " ");
// mView.getBrowserListFinished("");
// }
// //黑名单
// String black = browserDataBaseResponse.data.getBlack();
// if (!TextUtils.isEmpty(black)) {
// boolean blackList = Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", black);
// Logutils.e(TAG + ":" + "SetBrowserList", "setBrowserList black: " + black + " :" + blackList);
// String whiteList = Settings.System.getString(mContext.getContentResolver(), "DeselectBrowserArray");
// Logutils.e(TAG + ":" + "SetBrowserList", "getBrowserList white: " + whiteList);
// } else {
// Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", " ");
// }
// } else {
// mView.getBrowserListFinished("");
// }
// }
//
// @Override
// public void onError(@NonNull Throwable e) {
// Logutils.e(TAG + ":" + "SetBrowserList", "onError: " + e.getMessage());
// String whiteURLList = Settings.System.getString(mContext.getContentResolver(), "DeselectBrowserArray");
// Logutils.e(TAG + ":" + "SetBrowserList", "whiteURLList: " + whiteURLList);
// mView.getBrowserListFinished(whiteURLList);
// }
//
// @Override
// public void onComplete() {
// Logutils.e(TAG + ":" + "SetBrowserList", "onComplete: ");
// }
// });
// }
@Override
public void getBrowserBookmarks(String whitelist) {

View File

@@ -6,6 +6,8 @@ public class BrowserData implements Serializable {
private static final long serialVersionUID = 5199831572891077086L;
private String white;
private String black;
private String white_ip;
private String black_ip;
public String getWhite() {
return white;
@@ -22,4 +24,20 @@ public class BrowserData implements Serializable {
public void setBlack(String black) {
this.black = black;
}
public String getWhite_ip() {
return white_ip;
}
public void setWhite_ip(String white_ip) {
this.white_ip = white_ip;
}
public String getBlack_ip() {
return black_ip;
}
public void setBlack_ip(String black_ip) {
this.black_ip = black_ip;
}
}

View File

@@ -11,7 +11,6 @@ import android.os.Message;
import android.os.SystemClock;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import com.alibaba.fastjson.JSON;
@@ -508,219 +507,238 @@ public class HTTPInterface {
//设置浏览器黑白名单
synchronized public static void setBrowserBlackList(final Context context) {
OkGo.post(URLAddress.SET_BROWSER_LIST)
.params("key", NetInterfaceManager.HTTP_KEY)
.params("sn", Utils.getSerial())
.execute(new StringCallback() {
@Override
public void onSuccess(String s, Call call, Response response) {
try {
JSONObject jsonObject = JSON.parseObject(s);
int code = jsonObject.getInteger("code");
String msg = jsonObject.getString("msg");
if (code == 200) {
JSONObject data = JSON.parseObject(jsonObject.getString("data"));
String white = data.getString("white");
String homePage = Settings.System.getString(context.getContentResolver(), "homepagURL");
if (!TextUtils.isEmpty(white)) {
if (!TextUtils.isEmpty(homePage) && !white.contains(homePage)) {
white += "," + homePage;
}
boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
Logutils.e("setBrowserBlackList", "setBrowserList----white-----" + whiteList + ":" + white);
} else {
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", homePage);
}
String black = data.getString("black");
if (!TextUtils.isEmpty(black)) {
boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
Logutils.e("setBrowserBlackList", "setBrowserList----black-----" + blackList + ":" + black);
new URLUtils(context).setBrowserBlackList();
} else {
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
}
} else {
Logutils.e("setBrowserBlackList", "setBrowserList" + msg);
}
} catch (JSONException e) {
Logutils.e("setBrowserBlackList", "JSONException" + e.getMessage());
}
new URLUtils(context).setBrowserWhiteList();
}
@Override
public void onError(Call call, Response response, Exception e) {
super.onError(call, response, e);
Logutils.e(TAG, "onError: " + e.getMessage());
}
});
}
private static void NewSetBrowserList(Context context) {
NetInterfaceManager.getInstance()
.getBrowserListSettingObservable()
.observeOn(Schedulers.io())
.subscribe(new Observer<BaseResponse<BrowserData>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Logutils.e("NewSetBrowserList", "onSubscribe: ");
public void onSubscribe(Disposable d) {
Logutils.e("setBrowserBlackList", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
Logutils.e("NewSetBrowserList", "onNext: ");
public void onNext(BaseResponse<BrowserData> browserDataBaseResponse) {
Logutils.e("setBrowserBlackList", "onNext: ");
String homePage = Settings.System.getString(context.getContentResolver(), "homepagURL");
if (browserDataBaseResponse.code == 200) {
String white = browserDataBaseResponse.data.getWhite();
String black = browserDataBaseResponse.data.getBlack();
if (!TextUtils.isEmpty(white) && !TextUtils.isEmpty(black)) {
Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", " ");
//黑白名单同时存在时由以前的逻辑管控
boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
Logutils.e("NewSetBrowserList", "setBrowserList white: " + white + ":" + whiteList);
boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
Logutils.e("NewSetBrowserList", "setBrowserList black: " + black + ":" + blackList);
} else if (TextUtils.isEmpty(white)) {
//设置黑名单
Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 1);
Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", black);
//白名单为空由新的管控执行
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
} else if (TextUtils.isEmpty(black)) {
Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", " ");
//黑名单为空由旧的管控执行
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
}
} else {
//所有置空
Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", " ");
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
}
}
@Override
public void onError(@NonNull Throwable e) {
Logutils.e("NewSetBrowserList", "onError: " + e.getMessage());
onComplete();
}
@Override
public void onComplete() {
Logutils.e("NewSetBrowserList", "onComplete: ");
new URLUtils(context).setBrowserWhiteList();
}
});
}
private static void SetBrowserList(Context context) {
NetInterfaceManager.getInstance()
.getBrowserListSettingObservable()
.observeOn(Schedulers.io())
.subscribe(new Observer<BaseResponse<BrowserData>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Logutils.e("SetBrowserList", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
Logutils.e("SetBrowserList", "onNext: ");
if (browserDataBaseResponse.code == 200) {
//白名单
String white = browserDataBaseResponse.data.getWhite();
BrowserData data = browserDataBaseResponse.data;
String white = data.getWhite();
if (!TextUtils.isEmpty(white)) {
String homePage = Settings.System.getString(context.getContentResolver(), "homepagURL");
if (!TextUtils.isEmpty(homePage) && !white.contains(homePage)) {
white += "," + homePage;
}
boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
Logutils.e("SetBrowserList", "setBrowserList white: " + white + " :" + whiteList);
String black = Settings.System.getString(context.getContentResolver(), "qch_webblack_url");
Logutils.e("SetBrowserList", "getBrowserList black: " + black);
boolean DeselectBrowserArray = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
Logutils.e("setBrowserBlackList", "setBrowserList white = " + white + ":" + DeselectBrowserArray);
} else {
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", homePage);
}
//黑名单
String black = browserDataBaseResponse.data.getBlack();
String black = data.getBlack();
if (!TextUtils.isEmpty(black)) {
boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
Logutils.e("SetBrowserList", "setBrowserList black: " + black + " :" + blackList);
String whiteList = Settings.System.getString(context.getContentResolver(), "DeselectBrowserArray");
Logutils.e("SetBrowserList", "getBrowserList white: " + whiteList);
boolean qch_webblack_url = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
Logutils.e("setBrowserBlackList", "setBrowserList black = " + black + ":" + qch_webblack_url);
} else {
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
}
String white_ip = data.getWhite_ip();
if (!TextUtils.isEmpty(white_ip)) {
SPUtils.put(context, "white_ip", white_ip);
}else {
SPUtils.put(context, "white_ip", " ");
}
String black_ip = data.getBlack_ip();
if (!TextUtils.isEmpty(black_ip)) {
SPUtils.put(context, "black_ip", black_ip);
}else {
SPUtils.put(context, "black_ip", " ");
}
} else {
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", homePage);
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
SPUtils.put(context, "white_ip", " ");
SPUtils.put(context, "black_ip", " ");
}
}
@Override
public void onError(@NonNull Throwable e) {
Logutils.e("SetBrowserList", "onError: " + e.getMessage());
public void onError(Throwable e) {
Logutils.e("setBrowserBlackList", "onError: " + e.getMessage());
onComplete();
}
@Override
public void onComplete() {
Logutils.e("setBrowserBlackList", "onComplete: ");
new URLUtils(context).setBrowserWhiteList();
Logutils.e("SetBrowserList", "onComplete: ");
new URLUtils(context).setBrowserBlackList();
}
});
}
// private static void NewSetBrowserList(Context context) {
// NetInterfaceManager.getInstance()
// .getBrowserListSettingObservable()
// .observeOn(Schedulers.io())
// .subscribe(new Observer<BaseResponse<BrowserData>>() {
// @Override
// public void onSubscribe(@NonNull Disposable d) {
// Logutils.e("NewSetBrowserList", "onSubscribe: ");
// }
//
// @Override
// public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
// Logutils.e("NewSetBrowserList", "onNext: ");
// if (browserDataBaseResponse.code == 200) {
// String white = browserDataBaseResponse.data.getWhite();
// String black = browserDataBaseResponse.data.getBlack();
// if (!TextUtils.isEmpty(white) && !TextUtils.isEmpty(black)) {
// Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", " ");
// //黑白名单同时存在时由以前的逻辑管控
// boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
// Logutils.e("NewSetBrowserList", "setBrowserList white: " + white + ":" + whiteList);
// boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
// Logutils.e("NewSetBrowserList", "setBrowserList black: " + black + ":" + blackList);
// } else if (TextUtils.isEmpty(white)) {
// //设置黑名单
// Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 1);
// Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", black);
// //白名单为空由新的管控执行
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// } else if (TextUtils.isEmpty(black)) {
// Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", " ");
// //黑名单为空由旧的管控执行
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// }
// } else {
// //所有置空
// Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Settings.System.putString(context.getContentResolver(), "BlackBrowserArray", " ");
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// }
// }
//
// @Override
// public void onError(@NonNull Throwable e) {
// Logutils.e("NewSetBrowserList", "onError: " + e.getMessage());
// onComplete();
// }
//
// @Override
// public void onComplete() {
// Logutils.e("NewSetBrowserList", "onComplete: ");
// new URLUtils(context).setBrowserWhiteList();
// }
// });
// }
// private static void SetBrowserList(Context context) {
// NetInterfaceManager.getInstance()
// .getBrowserListSettingObservable()
// .observeOn(Schedulers.io())
// .subscribe(new Observer<BaseResponse<BrowserData>>() {
// @Override
// public void onSubscribe(@NonNull Disposable d) {
// Logutils.e("SetBrowserList", "onSubscribe: ");
// }
//
// @Override
// public void onNext(@NonNull BaseResponse<BrowserData> browserDataBaseResponse) {
// Settings.System.putInt(context.getContentResolver(), "qch_website_isBlackWebUrl", 0);
// Logutils.e("SetBrowserList", "onNext: ");
// if (browserDataBaseResponse.code == 200) {
// //白名单
// String white = browserDataBaseResponse.data.getWhite();
// if (!TextUtils.isEmpty(white)) {
// String homePage = Settings.System.getString(context.getContentResolver(), "homepagURL");
// if (!TextUtils.isEmpty(homePage) && !white.contains(homePage)) {
// white += "," + homePage;
// }
// boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// Logutils.e("SetBrowserList", "setBrowserList white: " + white + " :" + whiteList);
// String black = Settings.System.getString(context.getContentResolver(), "qch_webblack_url");
// Logutils.e("SetBrowserList", "getBrowserList black: " + black);
// } else {
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
// }
// //黑名单
// String black = browserDataBaseResponse.data.getBlack();
// if (!TextUtils.isEmpty(black)) {
// boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
// Logutils.e("SetBrowserList", "setBrowserList black: " + black + " :" + blackList);
// String whiteList = Settings.System.getString(context.getContentResolver(), "DeselectBrowserArray");
// Logutils.e("SetBrowserList", "getBrowserList white: " + whiteList);
// } else {
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// }
// } else {
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// }
// }
//
// @Override
// public void onError(@NonNull Throwable e) {
// Logutils.e("SetBrowserList", "onError: " + e.getMessage());
// onComplete();
// }
//
// @Override
// public void onComplete() {
// new URLUtils(context).setBrowserWhiteList();
// Logutils.e("SetBrowserList", "onComplete: ");
// }
// });
// }
//设置浏览器黑白名单
synchronized public static void OldSetBrowserList(final Context context) {
OkGo.post(URLAddress.SET_BROWSER_LIST)
.params("key", NetInterfaceManager.HTTP_KEY)
.params("sn", Utils.getSerial())
.execute(new StringCallback() {
@Override
public void onSuccess(String s, Call call, Response response) {
try {
JSONObject jsonObject = JSON.parseObject(s);
int code = jsonObject.getInteger("code");
String msg = jsonObject.getString("msg");
if (code == 200) {
JSONObject data = JSON.parseObject(jsonObject.getString("data"));
String white = data.getString("white");
if (white != null && !"".equals(white)) {
boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
Logutils.e("SystemSetting", "OldSetBrowserList----white-----" + whiteList + ":" + white);
} else {
Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
}
String black = data.getString("black");
if (black != null && !"".equals(black)) {
boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
Logutils.e("SystemSetting", "OldSetBrowserList----black-----" + blackList + ":" + black);
} else {
Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
}
} else {
Logutils.e("fht", "OldSetBrowserList" + msg);
}
} catch (JSONException e) {
Logutils.e("fht", "OldSetBrowserList" + e.getMessage());
}
}
@Override
public void onError(Call call, Response response, Exception e) {
super.onError(call, response, e);
}
});
}
// synchronized public static void OldSetBrowserList(final Context context) {
// OkGo.post(URLAddress.SET_BROWSER_LIST)
// .params("key", NetInterfaceManager.HTTP_KEY)
// .params("sn", Utils.getSerial())
// .execute(new StringCallback() {
// @Override
// public void onSuccess(String s, Call call, Response response) {
// try {
// JSONObject jsonObject = JSON.parseObject(s);
// int code = jsonObject.getInteger("code");
// String msg = jsonObject.getString("msg");
// if (code == 200) {
// JSONObject data = JSON.parseObject(jsonObject.getString("data"));
// String white = data.getString("white");
// if (white != null && !"".equals(white)) {
// boolean whiteList = Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", white);
// Logutils.e("SystemSetting", "OldSetBrowserList----white-----" + whiteList + ":" + white);
// } else {
// Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " ");
// }
// String black = data.getString("black");
// if (black != null && !"".equals(black)) {
// boolean blackList = Settings.System.putString(context.getContentResolver(), "qch_webblack_url", black);
// Logutils.e("SystemSetting", "OldSetBrowserList----black-----" + blackList + ":" + black);
// } else {
// Settings.System.putString(context.getContentResolver(), "qch_webblack_url", " ");
// }
// } else {
// Logutils.e("fht", "OldSetBrowserList" + msg);
// }
// } catch (JSONException e) {
// Logutils.e("fht", "OldSetBrowserList" + e.getMessage());
// }
// }
//
// @Override
// public void onError(Call call, Response response, Exception e) {
// super.onError(call, response, e);
// }
// });
// }
synchronized public static void setHomepagtag(final Context context) {
//7.0setPackage不加没有问题,.setPackage("com.android.settings")10.0需要加上,待底层修改后
@@ -843,7 +861,7 @@ public class HTTPInterface {
String homepagURL = browserBookmarksBaseResponse.data.getHomepage();
Logutils.e("getHomePageBookmarks ", "homepagURL: " + homepagURL);
String oldHome = Settings.System.getString(context.getContentResolver(), "homepagURL");
Log.e("getHomePageBookmarks", "oldHome: " + oldHome);
Logutils.e("getHomePageBookmarks", "oldHome: " + oldHome);
//数据和之前不一样的时候清除缓存
if (!TextUtils.isEmpty(oldHome) && !oldHome.equalsIgnoreCase(homepagURL)) {
try {
@@ -1097,7 +1115,7 @@ public class HTTPInterface {
.subscribe(new Observer<BaseResponse>() {
@Override
public void onSubscribe(Disposable d) {
Log.e(TAG, "onSubscribe: ");
Logutils.e(TAG, "onSubscribe: ");
}
@Override

View File

@@ -33,6 +33,7 @@ public class URLUtils {
private Context mContext;
private HashSet<String> baseURLList = new HashSet<>();
private HashSet<String> nohttpURLList = new HashSet<>();
private HashSet<String> whiteIPList = new HashSet<>();
private long time1;
private long time2;
@@ -49,6 +50,11 @@ public class URLUtils {
Logutils.e(TAG, "getBrowserWhiteList: " + "oldwhiteList is empty");
Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", "Invalid");
} else {
String white_ip = (String) SPUtils.get(mContext, "white_ip", "");
if (!TextUtils.isEmpty(white_ip)) {
whiteIPList = new HashSet<>(Arrays.asList(white_ip.split(",")));
}
whiteIPList.removeIf(TextUtils::isEmpty);
Logutils.e(TAG, "getBrowserWhiteList: " + "oldwhiteList is : " + oldwhiteList);
HashSet<String> URLList = new HashSet<>(Arrays.asList(oldwhiteList.trim().split(",")));
URLList.removeIf(TextUtils::isEmpty);
@@ -79,7 +85,7 @@ public class URLUtils {
// }
// }else {
// }
if (haveDomain(url)){
if (haveDomain(url)) {
nohttpURLList.add("m." + getDomain(url));
}
// nohttpURLList.add(getDomain(url));
@@ -192,6 +198,7 @@ public class URLUtils {
public void onComplete() {
Logutils.i(TAG, "onComplete: " + baseURLList);
baseURLList.addAll(nohttpURLList);
baseURLList.addAll(whiteIPList);
baseURLList.removeIf(TextUtils::isEmpty);
String DeselectBrowserArray = String.join(",", baseURLList);
Logutils.e(TAG, "onComplete: " + "white list: " + DeselectBrowserArray);
@@ -204,35 +211,42 @@ public class URLUtils {
}
private HashSet<String> blackList = new HashSet<>();
private HashSet<String> blackIPList = new HashSet<>();
public void setBrowserBlackList() {
String qch_webblack_url = Settings.System.getString(mContext.getContentResolver(), "qch_webblack_url");
Logutils.e(TAG, "setBrowserBlackList: qch_webblack_url = " + qch_webblack_url);
if (TextUtils.isEmpty(qch_webblack_url)) {
Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", "Invalid");
return;
}
HashSet<String> URLList = new HashSet<>(Arrays.asList(qch_webblack_url.trim().split(",")));
for (String url : URLList) {
if (TextUtils.isEmpty(url)) {
continue;
} else {
String black_ip = (String) SPUtils.get(mContext, "black_ip", "");
if (!TextUtils.isEmpty(black_ip)) {
blackIPList = new HashSet<>(Arrays.asList(black_ip.split(",")));
}
Logutils.e(TAG, "setBrowserBlackList: url: " + url);
if (qch_webblack_url.startsWith("http://")) {
blackList.add(url);
blackList.add(url.replace("http://", "https://"));
} else if (qch_webblack_url.startsWith("https://")) {
blackList.add(url);
blackList.add(url.replace("https://", "http://"));
} else {
blackList.add("http://" + url);
blackList.add("https://" + url);
blackIPList.removeIf(TextUtils::isEmpty);
HashSet<String> URLList = new HashSet<>(Arrays.asList(qch_webblack_url.trim().split(",")));
for (String url : URLList) {
if (TextUtils.isEmpty(url)) {
continue;
}
Logutils.e(TAG, "setBrowserBlackList: url: " + url);
if (qch_webblack_url.startsWith("http://")) {
blackList.add(url);
blackList.add(url.replace("http://", "https://"));
} else if (qch_webblack_url.startsWith("https://")) {
blackList.add(url);
blackList.add(url.replace("https://", "http://"));
} else {
blackList.add("http://" + url);
blackList.add("https://" + url);
}
}
blackList.addAll(blackIPList);
blackList.removeIf(TextUtils::isEmpty);
Logutils.e(TAG, "setBrowserBlackList: blackList: " + blackList);
boolean write = Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", String.join(",", blackList));
Logutils.e(TAG, "setBrowserBlackList: write: " + write);
}
Logutils.e(TAG, "setBrowserBlackList: blackList: " + blackList);
boolean write = Settings.System.putString(mContext.getContentResolver(), "qch_webblack_url", String.join(",", blackList));
Logutils.e(TAG, "setBrowserBlackList: write: " + write);
}
private String getOkHttpURL(String URL) {