version:2.1 beta
fix:优化获取桌面图标接口 update:
This commit is contained in:
@@ -893,57 +893,74 @@ public class NetInterfaceManager {
|
||||
public void getDefaultDesktop(BehaviorSubject<ActivityEvent> lifecycle, onCompleteCallback callback) {
|
||||
getDesktopObservable()
|
||||
.compose(RxLifecycle.bindUntilEvent(lifecycle, ActivityEvent.DESTROY))
|
||||
.subscribe(new Observer<BaseResponse<ForceDownloadData>>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
Log.e("getDefaultDesktop", "onSubscribe: ");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull BaseResponse<ForceDownloadData> baseResponse) {
|
||||
Log.e("getDefaultDesktop", "onNext: " + baseResponse);
|
||||
if (baseResponse.code == OK) {
|
||||
ForceDownloadData desktopInfo = baseResponse.data;
|
||||
String jsonString = GsonUtils.toJsonString(desktopInfo);
|
||||
JSONObject data = JSON.parseObject(jsonString);
|
||||
cacheHelper.put(UrlAddress.GET_DESKTOP, jsonString);
|
||||
JGYUtils.getInstance().installDesktop(data);
|
||||
SPUtils.put(mContext, "default_launcher", desktopInfo.getApp_package());
|
||||
} else {
|
||||
Log.e("getDefaultDesktop", "onNext: " + "删除定制桌面");
|
||||
cacheHelper.put(UrlAddress.GET_DESKTOP, "");
|
||||
String whiteList = Settings.System.getString(mContext.getContentResolver(), JGYActions.ACTION_JGY_SHORTCUTLIST);
|
||||
Log.e("getDefaultDesktop", "onNext: " + whiteList);
|
||||
if (!TextUtils.isEmpty(whiteList)) {
|
||||
if (!whiteList.contains(ApkUtils.desktopAPP.get(0))) {
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(0));
|
||||
Log.e("getDefaultDesktop", "skip: " + ApkUtils.desktopAPP.get(0));
|
||||
}
|
||||
if (!whiteList.contains(ApkUtils.desktopAPP.get(1))) {
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(1));
|
||||
Log.e("getDefaultDesktop", "skip: " + ApkUtils.desktopAPP.get(1));
|
||||
}
|
||||
}else {
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(0));
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(1));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
Log.e("getDefaultDesktop", "onError: " + e.getMessage());
|
||||
onComplete();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
Log.e("getDefaultDesktop", "onComplete: ");
|
||||
callback.onComplete();
|
||||
}
|
||||
});
|
||||
.subscribe(getDefaultDesktopObserver(callback));
|
||||
}
|
||||
|
||||
public void getDefaultDesktop(onCompleteCallback callback) {
|
||||
getDesktopObservable()
|
||||
.subscribe(getDefaultDesktopObserver(callback));
|
||||
}
|
||||
|
||||
public void getDefaultDesktop() {
|
||||
getDesktopObservable()
|
||||
.subscribe(getDefaultDesktopObserver(null));
|
||||
}
|
||||
|
||||
public Observer getDefaultDesktopObserver(onCompleteCallback callback) {
|
||||
return new Observer<BaseResponse<ForceDownloadData>>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
Log.e("getDefaultDesktop", "onSubscribe: ");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull BaseResponse<ForceDownloadData> baseResponse) {
|
||||
Log.e("getDefaultDesktop", "onNext: " + baseResponse);
|
||||
if (baseResponse.code == OK) {
|
||||
ForceDownloadData desktopInfo = baseResponse.data;
|
||||
String jsonString = GsonUtils.toJsonString(desktopInfo);
|
||||
JSONObject data = JSON.parseObject(jsonString);
|
||||
cacheHelper.put(UrlAddress.GET_DESKTOP, jsonString);
|
||||
JGYUtils.getInstance().installDesktop(data);
|
||||
JGYUtils.getInstance().setDefaultDesktop(desktopInfo.getApp_package());
|
||||
} else {
|
||||
Log.e("getDefaultDesktop", "onNext: " + "删除定制桌面");
|
||||
cacheHelper.put(UrlAddress.GET_DESKTOP, "");
|
||||
String whiteList = Settings.System.getString(mContext.getContentResolver(), JGYActions.ACTION_JGY_SHORTCUTLIST);
|
||||
Log.e("getDefaultDesktop", "onNext: " + whiteList);
|
||||
if (!TextUtils.isEmpty(whiteList)) {
|
||||
if (!whiteList.contains(ApkUtils.desktopAPP.get(0))) {
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(0));
|
||||
Log.e("getDefaultDesktop", "skip: " + ApkUtils.desktopAPP.get(0));
|
||||
}
|
||||
if (!whiteList.contains(ApkUtils.desktopAPP.get(1))) {
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(1));
|
||||
Log.e("getDefaultDesktop", "skip: " + ApkUtils.desktopAPP.get(1));
|
||||
}
|
||||
} else {
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(0));
|
||||
ApkUtils.UninstallAPP(mContext, ApkUtils.desktopAPP.get(1));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
Log.e("getDefaultDesktop", "onError: " + e.getMessage());
|
||||
onComplete();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
Log.e("getDefaultDesktop", "onComplete: ");
|
||||
if (callback != null) {
|
||||
callback.onComplete();
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
public void setLogoImg(boolean refresh, BehaviorSubject<ActivityEvent> lifecycle, onCompleteCallback callback) {
|
||||
ConnectMode connectMode = ConnectMode.ONE_HOUR;
|
||||
if (refresh) {
|
||||
|
||||
@@ -463,7 +463,14 @@ public class MessageReceiver extends XGPushBaseReceiver {
|
||||
if (TextUtils.isEmpty(pkg)) return;
|
||||
ApkUtils.UninstallAPP(mContext, pkg);
|
||||
}
|
||||
NetInterfaceManager.getInstance().getNetAndLaunchSetting();
|
||||
Handler.getMain().postDelayed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
NetInterfaceManager.getInstance().getDesktopIcon();
|
||||
NetInterfaceManager.getInstance().getDefaultDesktop();
|
||||
NetInterfaceManager.getInstance().getNetAndLaunchSetting();
|
||||
}
|
||||
},1234);
|
||||
break;
|
||||
case MSG_SETTING:
|
||||
ToastUtil.betaShow("收到管控:系统设置");
|
||||
@@ -498,7 +505,13 @@ public class MessageReceiver extends XGPushBaseReceiver {
|
||||
case MSG_INSTALL:
|
||||
ToastUtil.betaShow("收到管控:应用安装");
|
||||
doDownloadAndInstall(extras);
|
||||
NetInterfaceManager.getInstance().getDesktopIcon();
|
||||
Handler.getMain().postDelayed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
NetInterfaceManager.getInstance().getDesktopIcon();
|
||||
NetInterfaceManager.getInstance().getDefaultDesktop();
|
||||
}
|
||||
},1234);
|
||||
break;
|
||||
case MSG_LOCK:
|
||||
ToastUtil.betaShow("收到管控:设备锁定");
|
||||
|
||||
@@ -927,6 +927,12 @@ public class ApkUtils {
|
||||
this.add("cn.com.bifa.eyeshiely");
|
||||
}};
|
||||
|
||||
public static List aihuaApp = new ArrayList(){{
|
||||
this.add("com.liuyang.jcstudentside");
|
||||
this.add("com.alibaba.android.rimet");
|
||||
this.add("com.tencent.wemeet.app");
|
||||
this.add("com.qi.studycomputer.launcher");
|
||||
}};
|
||||
|
||||
public static void showAllAPP(Context context) {
|
||||
PackageManager pm = context.getPackageManager();
|
||||
|
||||
@@ -1381,8 +1381,8 @@ public class JGYUtils {
|
||||
for (ResolveInfo resolveInfo : apps) {
|
||||
String pkg = resolveInfo.activityInfo.packageName;
|
||||
Log.e(TAG, "hideSystemAPP: " + pkg);
|
||||
if (!ApkUtils.isSystemApp(mContext, pkg)) {
|
||||
continue;
|
||||
if (ApkUtils.isSystemApp(mContext, pkg)) {
|
||||
pm.setApplicationEnabledSetting(pkg, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, 0);
|
||||
}
|
||||
if (!showAppList.contains(pkg)) {
|
||||
pm.setApplicationEnabledSetting(pkg, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, 0);
|
||||
@@ -1898,6 +1898,7 @@ public class JGYUtils {
|
||||
|
||||
public void checkDefaultDesktop(String pkg) {
|
||||
String desktopPkg = (String) SPUtils.get(mContext, "default_launcher", "");
|
||||
Log.e(TAG, "checkDefaultDesktop: " + desktopPkg);
|
||||
if (desktopPkg.equalsIgnoreCase(pkg)) {
|
||||
setDefaultDesktop(pkg);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user