diff --git a/app/build.gradle b/app/build.gradle index 5ffd8c6..65abcfb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,25 +9,25 @@ static def releaseTime() { } android { - gradle.projectsEvaluated { - tasks.withType(JavaCompile) { - Set fileSet = options.bootstrapClasspath.getFiles() - List newFileList = new ArrayList<>(); - //JAVA语法,可连续调用,输入参数建议为相对路径 - newFileList.add(new File("libs/framework.jar")) - //最后将原始参数添加 - newFileList.addAll(fileSet) - options.bootstrapClasspath = files( - newFileList.toArray() - ) - } - } +// gradle.projectsEvaluated { +// tasks.withType(JavaCompile) { +// Set fileSet = options.bootstrapClasspath.getFiles() +// List newFileList = new ArrayList<>(); +// //JAVA语法,可连续调用,输入参数建议为相对路径 +// newFileList.add(new File("libs/framework.jar")) +// //最后将原始参数添加 +// newFileList.addAll(fileSet) +// options.bootstrapClasspath = files( +// newFileList.toArray() +// ) +// } +// } compileSdkVersion 29 buildToolsVersion "29.0.3" defaultConfig { - applicationId "com.info.sn" + applicationId "com.uiui.sn" minSdkVersion 24 targetSdkVersion 29 @@ -60,28 +60,28 @@ android { productFlavors { beta { flavorDimensions "default" - versionCode 85 - versionName "1.8.5" + versionCode 2 + versionName "1.1" manifestPlaceholders = [ - JPUSH_PKGNAME: "com.info.sn", - JPUSH_APPKEY : "edf9cec22731b8b2fed56ee6", //JPush 上注册的包名对应的 Appkey. + JPUSH_PKGNAME: "com.uiui.sn", + JPUSH_APPKEY : "1a1e405ca5a1a5cd50e9f734", //JPush 上注册的包名对应的 Appkey. JPUSH_CHANNEL: "developer-default", //暂时填写默认值即可. ] - buildConfigField "String", "SCREEN_URL", '"https://homework.uiuios.com:3018/wm/is_online"' - buildConfigField "String", "WEBSOCKET_URL", '"wss://homework.uiuios.com:3018"' + buildConfigField "String", "SCREEN_URL", '"https://led.aolelearn.cn:3018/wm/is_online"' + buildConfigField "String", "WEBSOCKET_URL", '"wss://led.aolelearn.cn:3018"' } official { flavorDimensions "default" - versionCode 77 - versionName "1.7.7" + versionCode 1 + versionName "1.0" manifestPlaceholders = [ - JPUSH_PKGNAME: "com.info.sn", - JPUSH_APPKEY : "4a6d2d53673e958fa8beb69d", //JPush 上注册的包名对应的 Appkey. + JPUSH_PKGNAME: "com.uiui.sn", + JPUSH_APPKEY : "1a1e405ca5a1a5cd50e9f734", //JPush 上注册的包名对应的 Appkey. JPUSH_CHANNEL: "developer-default", //暂时填写默认值即可. ] - buildConfigField "String", "SCREEN_URL", '"https://homework.uiuios.com:3018/wm/is_online"' - buildConfigField "String", "WEBSOCKET_URL", '"wss://homework.uiuios.com:3018"' + buildConfigField "String", "SCREEN_URL", '"https://led.aolelearn.cn:3018/wm/is_online"' + buildConfigField "String", "WEBSOCKET_URL", '"wss://led.aolelearn.cn:3018"' } } @@ -121,7 +121,7 @@ android { buildConfigField "String", "platform", '"ZhanRui"' signingConfig signingConfigs.zhanRui manifestPlaceholders = [ - AMAP_KEY: "8c4e1d478cb91e6b5713562bc424efba" + AMAP_KEY: "8d89de548781c72b984c4b45b146bf1e" ] } @@ -132,7 +132,7 @@ android { debuggable true signingConfig signingConfigs.zhanRui manifestPlaceholders = [ - AMAP_KEY: "8c4e1d478cb91e6b5713562bc424efba" + AMAP_KEY: "8d89de548781c72b984c4b45b146bf1e" ] } @@ -152,7 +152,7 @@ android { } } manifestPlaceholders = [ - AMAP_KEY: "83869aed8624eb00615c2b6d3d15d777" + AMAP_KEY: "8d89de548781c72b984c4b45b146bf1e" ] } @@ -177,7 +177,7 @@ android { } } manifestPlaceholders = [ - AMAP_KEY: "83869aed8624eb00615c2b6d3d15d777" + AMAP_KEY: "8d89de548781c72b984c4b45b146bf1e" ] } } @@ -192,13 +192,13 @@ android { dependencies { // implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.legacy:legacy-support-v4:1.0.0' compileOnly files('libs/framework.jar') implementation 'androidx.appcompat:appcompat:1.3.1' //implementation 'com.android.support:multidex:1.0.3' implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.recyclerview:recyclerview:1.2.1' + implementation 'androidx.legacy:legacy-support-v4:1.0.0' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' diff --git a/app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java b/app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java deleted file mode 100644 index f64e2ec..0000000 --- a/app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.info.sn; - -import android.content.Context; - -import androidx.test.platform.app.InstrumentationRegistry; -import androidx.test.ext.junit.runners.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see Testing documentation - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); - - assertEquals("com.info.sn", appContext.getPackageName()); - } -} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 16af5cd..37a5dd9 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,8 +1,9 @@ + @@ -22,7 +23,7 @@ @@ -51,7 +52,7 @@ + android:screenOrientation="portrait"> @@ -99,13 +100,13 @@ - - + + @@ -119,7 +120,7 @@ - + @@ -132,11 +133,11 @@ @@ -155,7 +156,7 @@ @@ -168,13 +169,13 @@ - + @@ -213,7 +214,7 @@ @@ -225,12 +226,12 @@ - + - + @@ -264,19 +265,19 @@ - + @@ -285,10 +286,10 @@ - + - + diff --git a/app/src/main/aidl/com/info/sn/IGetInfoInterface.aidl b/app/src/main/aidl/com/uiui/sn/IGetInfoInterface.aidl similarity index 96% rename from app/src/main/aidl/com/info/sn/IGetInfoInterface.aidl rename to app/src/main/aidl/com/uiui/sn/IGetInfoInterface.aidl index 627fdba..afda07a 100644 --- a/app/src/main/aidl/com/info/sn/IGetInfoInterface.aidl +++ b/app/src/main/aidl/com/uiui/sn/IGetInfoInterface.aidl @@ -1,5 +1,5 @@ // IGetInfoInterface.aidl -package com.info.sn; +package com.uiui.sn; // Declare any non-default types here with import statements diff --git a/app/src/main/aidl/com/info/sn/KeepAliveConnection.aidl b/app/src/main/aidl/com/uiui/sn/KeepAliveConnection.aidl similarity index 94% rename from app/src/main/aidl/com/info/sn/KeepAliveConnection.aidl rename to app/src/main/aidl/com/uiui/sn/KeepAliveConnection.aidl index 3cada22..c704231 100644 --- a/app/src/main/aidl/com/info/sn/KeepAliveConnection.aidl +++ b/app/src/main/aidl/com/uiui/sn/KeepAliveConnection.aidl @@ -1,5 +1,5 @@ // KeepAliveConnection.aidl -package com.info.sn; +package com.uiui.sn; // Declare any non-default types here with import statements diff --git a/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradePresenter.java b/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradePresenter.java deleted file mode 100644 index 68f8f31..0000000 --- a/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradePresenter.java +++ /dev/null @@ -1,357 +0,0 @@ -package com.info.sn.activity.selectegrade; - -import android.content.Context; -import android.provider.Settings; -import android.text.TextUtils; -import android.util.Log; - -import com.alibaba.fastjson.JSONObject; -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.google.gson.reflect.TypeToken; -import com.info.sn.activity.main.MainActivity; -import com.info.sn.activity.main.MainPresenter; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.bean.gankao.CreateUserBean; -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.bean.gankao.PowerUser; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.Response; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.config.Scheme; -import com.info.sn.manager.NetInterfaceManager; -import com.info.sn.utils.LaunchTools; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.Utils; -import com.trello.rxlifecycle2.LifecycleProvider; -import com.trello.rxlifecycle2.android.ActivityEvent; - -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; - -import io.reactivex.Observer; -import io.reactivex.android.schedulers.AndroidSchedulers; -import io.reactivex.disposables.Disposable; -import io.reactivex.schedulers.Schedulers; - -public class SelecteGradePresenter implements SelecteGradeContact.Presenter { - private String TAG; - - private SelecteGradeContact.MainView mView; - private Context mContext; - - SelecteGradePresenter(Context context) { - this.mContext = context; - TAG = context.getClass().getSimpleName() + "." + MainPresenter.class.getSimpleName() + ":"; - } - - private LifecycleProvider provider; - - public void setProvider(LifecycleProvider provider) { - this.provider = provider; - } - - public LifecycleProvider getProvider() { - return provider; - } - - @Override - public void attachView(SelecteGradeContact.MainView view) { - this.mView = view; - } - - @Override - public void detachView() { - this.mView = null; - } - - @Override - public void checkSN() { - NetInterfaceManager.getInstance() - .getsnInfoControl() - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer>() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "checkSN", "onSubscribe: "); - } - - @Override - public void onNext(BaseResponse userInfoBaseResponse) { - Log.e(TAG + "checkSN", "onNext: "); - int code = userInfoBaseResponse.code; - mView.checkSNResult(code); - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "checkSN", "onError: " + e.getMessage()); - mView.checkSNResult(404); - onComplete(); - } - - @Override - public void onComplete() { - Log.e(TAG + TAG + "checkSN", "onComplete: "); - } - }); - } - - @Override - public void getGankaoUID() { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - Log.e(TAG + TAG, "getGankaoUID: uid: " + uid); - if (TextUtils.isEmpty(uid) || "0".equals(uid)) { - ToastUtil.show("设备未绑定账号,请绑定后重试"); - return; - } - - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - String token = LaunchTools.getToken(params); - NetInterfaceManager.getInstance() - .getCreateUserControl() - .createUser(appid, timestamp, uid, token) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "getGankaoUID", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "getGankaoUID", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10002) { - Type type = new TypeToken() { - }.getType(); - Gson gson = new Gson(); - CreateUserBean userBean = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - String gankaoPartnerUID = userBean.getGankaoPartnerUID(); - int gankaoUIDint = userBean.getGankaoUID(); - String gankaoUID = String.valueOf(gankaoUIDint); - Log.e(TAG + "getGankaoUID", "onNext: gankaoUID: " + gankaoUID); - SPUtils.put(mContext, "gankaoUID", gankaoUID); - Settings.System.putString(mContext.getContentResolver(), "gankaoUID", gankaoUID); - int isNew = userBean.getIsNew(); - mView.setGankaoUID(gankaoUID); - } else { - mView.setGankaoUID(""); - } - } - - @Override - public void onError(Throwable e) { - mView.setGankaoUID(""); - Log.e(TAG + "getGankaoUID", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e(TAG + "getGankaoUID", "onComplete: "); - } - }); - } - - @Override - public void queryAvailableProduct() { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - NetInterfaceManager.getInstance() - .getQueryProductControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "queryAvailableProduct", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "queryAvailableProduct", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10000) { - Type type = new TypeToken>() { - }.getType(); - Gson gson = new Gson(); - List availableProductList = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - mView.setAvailableProduct(availableProductList); - } else { - ToastUtil.show("获取激活套餐失败"); - mView.setAvailableProduct(new ArrayList()); - } - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "queryAvailableProduct", "onError: " + e.getMessage()); - mView.setAvailableProduct(new ArrayList()); - } - - @Override - public void onComplete() { - Log.e(TAG + "queryAvailableProduct", "onComplete: "); - } - }); - } - - @Override - public void activeUser(AvailableProduct product, int grade) { - String specification_id = product.getSpecification_id(); - Log.e(TAG, "activeUser: specification_id: " + specification_id); - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - params.put("specification_id", String.valueOf(specification_id)); - - NetInterfaceManager.getInstance() - .getActiveUserControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params), uid, specification_id) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "activeUser", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - String jsonString = JSONObject.toJSONString(gankaoBaseResponse); - Log.e(TAG + "activeUser", "onNext: " + jsonString); - switch (gankaoBaseResponse.code) { - //第一次激活 - case 10000: - //已经授权过的 - case 50000: - Settings.System.putInt(mContext.getContentResolver(), MainActivity.activation, 1); - break; - default: - Settings.System.putInt(mContext.getContentResolver(), MainActivity.activation, 0); - break; - } - mView.activeUserFinish(gankaoBaseResponse.code, grade); - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "activeUser", "onError: "); - mView.activeUserFinish(0, grade); - } - - @Override - public void onComplete() { - Log.e(TAG + "activeUser", "onComplete: "); - } - }); - } - - @Override - public void queryPowerUserList(int grade) { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - - NetInterfaceManager.getInstance() - .getQueryPowerUserListControl() - .queryPowerUserList(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e("queryPowerUserList", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e("queryPowerUserList", "onNext: "); -// Log.e("queryPowerUserList", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - int code = gankaoBaseResponse.code; - if (code == 10000) { - Gson gson = new Gson(); - Type type = new TypeToken>() { - }.getType(); - JsonObject jsonObject = JsonParser.parseString(gson.toJson(gankaoBaseResponse.data)).getAsJsonObject(); - JsonArray jsonArray = jsonObject.getAsJsonArray("powerlist"); - List powerUserList = gson.fromJson(gson.toJson(jsonArray), type); - mView.queryPowerUserListFinish(powerUserList, grade); - } - } - - @Override - public void onError(Throwable e) { - Log.e("queryPowerUserList", "onError: " + e.getMessage()); - onComplete(); - } - - @Override - public void onComplete() { - Log.e("queryPowerUserList", "onComplete: "); - } - }); - } - - @Override - public void sendUid(String jsonString, int grade) { - String gankaoUID = Settings.System.getString(mContext.getContentResolver(), "gankaoUID"); - if (TextUtils.isEmpty(gankaoUID)) { - ToastUtil.show("获取设备UID失败,请重新激活"); - } - Log.e(TAG, "sendUid: " + jsonString); - NetInterfaceManager.getInstance() - .getSaveSnUidApiControl() - .saveSnUid(Utils.getSerial(), gankaoUID, grade, jsonString) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "sendUid", "onSubscribe: "); - } - - @Override - public void onNext(Response response) { - Log.e(TAG + "sendUid", "onNext: " + JSONObject.toJSONString(response)); - mView.sendUidFinish(response.code); - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "sendUid", "onError: " + e.getMessage()); - mView.sendUidFinish(404); - onComplete(); - } - - @Override - public void onComplete() { - Log.e(TAG + "sendUid", "onComplete: "); - } - }); - } -} diff --git a/app/src/main/java/com/info/sn/network/UrlAddress.java b/app/src/main/java/com/info/sn/network/UrlAddress.java deleted file mode 100644 index 539cdd5..0000000 --- a/app/src/main/java/com/info/sn/network/UrlAddress.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.info.sn.network; - -public class UrlAddress { - //主页接口 - public static final String ROOT_URL = "http://homework.uiuios.com/android/"; - //获取班级ID - public static final String GET_BATCH = ROOT_URL + "sn/getBatch"; - //设备信息接口 - public static final String SNINFO = ROOT_URL + "sn/getSnInfo"; - //发送app信息 - public static final String APPLOG = ROOT_URL + "App/getApplog"; - //获取正在运行的app - public static final String RUN_NEW_APP = "app/runNewApp"; - //根据包名获取更新 - public final static String GET_APP_UPDATE = ROOT_URL + "Update/update"; - //获取当前最顶层应用和电量 - public final static String SEND_RUNINGAPPINFO = ROOT_URL + "Monitoring/getAppNow"; - //在线状态 - public final static String SEND_DRIVE_STATE = ROOT_URL + "Online/online"; - //获取所有应用 - public final static String GET_ALL_PACKAGE = ROOT_URL + "app/queryAllApp"; - //绑定设备消息 - public final static String BIND_DEVICES = ROOT_URL + "sn/bindSn"; - //获取系统设置 - public final static String GET_SETTINGS = ROOT_URL + "control/getSetting"; - //浏览器网址管控 - public final static String SET_BROWSER_URL = ROOT_URL + "control/getBrowser"; - //浏览器书签管控 - public final static String SET_BROWSER_LABEL = ROOT_URL + "control/getLabel"; - //获取强制下载 - public final static String GET_FORCE_INSTALL = ROOT_URL + "app/getForceDownload"; - //获取app管控 - public final static String GET_APP_START = ROOT_URL + "sn/querySnAppStart"; - //发app跳转管控 - public final static String GET_APP_JUMP = ROOT_URL + "sn/querySnJump"; - //发app跳转管控 - public final static String QUERY_APP_INSIDE = ROOT_URL + "control/queryAppInside"; - //发送卸载或者安装信息 - public final static String SEND_INSTALLEDORREMOVED = ROOT_URL + "app/addAppInstall"; - //发送卸载或者安装信息 - public final static String UPDATE_SNINFO = ROOT_URL + "sn/updateAdminSn"; - //根据包名获取更新 - public final static String GET_NEWESTAPPUPDATE = ROOT_URL + "app/newestAppUpdate"; - //上传屏幕截图 - public final static String UPLOAD_SCREEN_SNAPSHOT = ROOT_URL + "sn/uploadScreenshot"; - //获取屏幕管控 - public final static String GET_SCREEN_LOCK = ROOT_URL + "sn/getScreenshot"; - //获取时间管控 - public final static String GET_TIME_CONTROL = ROOT_URL + "sn/getTimeControl"; - //获取用户头像和信息 - public static final String GET_USER_AVATAR_INFO = "sn/getUserAvatarInfo"; - //上传设备赶考的UID - public static final String POST_USER_SAVESNUID = "sn/saveSnUid"; - //获取激活时间和赶考UID - public static final String GET_SN_UID = "sn/getSnUid"; - //获取app使用信息 - public static final String UPLOAD_APP_USE_INFO = "sn/uploadAppUseInfo"; - //获取小程序二维码 - public static final String GET_APPLET_QRCODE = "file/getAppletQrCode"; - //获取操作指南 - public static final String GET_OPERATION_GUIDE = "file/getFiles"; - - - //赶考 - public static final String GANKAN_ROOT_URL = "https://www.gankao.com/api/service/"; - //创建/查询用户 - public static final String CREATE_USER = "createUser"; - //用户授权/激活权限 - public static final String ACTIVE_USER = "activeUser"; - //获得可用的权限产品规格 - public static final String QUERY_AVAILABLE_PRODUCT_SPECIFICATIONS = "queryAvailableProductSpecifications"; - //获取机构的接口授权记录 - public static final String QUERY_POWER_USER_LIST = "queryPowerUserList"; - //获取用户已获得的产品列表(权限、单体课程、套餐等) - public static final String GET_USER_PRODUCTS = "getUserProducts"; - //升级用户会员权限的学段 - public static final String UPGRADE_USER_POWER = "upgradeUserPower"; - //撤销指定的用户授权记录 - public static final String CANCEL_USER_POWER = "cancelUserPower"; - - - /* - * 极光 - * */ - //删除alias - public static final String DELETE_JPUSH_ALIAS = "https://device.jpush.cn/v3/aliases/"; - //删除tags - public static final String DELETE_JPUSH_TAG = "https://device.jpush.cn/v3/tags/"; -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/ActiveUserApi.java b/app/src/main/java/com/info/sn/network/api/gankao/ActiveUserApi.java deleted file mode 100644 index e7def73..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/ActiveUserApi.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.network.UrlAddress; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface ActiveUserApi { - @GET(UrlAddress - .ACTIVE_USER) - Observable activeUser( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("token") String token, - @Query("uid") String uid, - @Query("specification_id") String specification_id - ); -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/CancelUserPowerApi.java b/app/src/main/java/com/info/sn/network/api/gankao/CancelUserPowerApi.java deleted file mode 100644 index c8e6393..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/CancelUserPowerApi.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.bean.gankao.CancelUserPower; -import com.info.sn.network.UrlAddress; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface CancelUserPowerApi { - @GET(UrlAddress.CANCEL_USER_POWER) - Observable> cancelUserPower( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("token") String token, - @Query("user_power_id") String user_power_id, - @Query("specification_id") String specification_id - ); -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/CreateUserApi.java b/app/src/main/java/com/info/sn/network/api/gankao/CreateUserApi.java deleted file mode 100644 index c03e028..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/CreateUserApi.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.network.UrlAddress; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface CreateUserApi { - @GET(UrlAddress.CREATE_USER) - Observable createUser( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("uid") String uid, - @Query("token") String token - ); -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/QueryPowerUserListApi.java b/app/src/main/java/com/info/sn/network/api/gankao/QueryPowerUserListApi.java deleted file mode 100644 index ebb2381..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/QueryPowerUserListApi.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.network.UrlAddress; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface QueryPowerUserListApi { - @GET(UrlAddress.QUERY_POWER_USER_LIST) - Observable queryPowerUserList( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("token") String token - ); -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/QueryProductApi.java b/app/src/main/java/com/info/sn/network/api/gankao/QueryProductApi.java deleted file mode 100644 index 5eed154..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/QueryProductApi.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.network.UrlAddress; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface QueryProductApi { - @GET(UrlAddress.QUERY_AVAILABLE_PRODUCT_SPECIFICATIONS) - Observable activeUser( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("token") String token - ); -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/UpgradeUserPowerApi.java b/app/src/main/java/com/info/sn/network/api/gankao/UpgradeUserPowerApi.java deleted file mode 100644 index 0874985..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/UpgradeUserPowerApi.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.network.UrlAddress; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface UpgradeUserPowerApi { - @GET(UrlAddress.UPGRADE_USER_POWER) - Observable upgradeUserPower( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("token") String token, - @Query("uid") String uid, - @Query("user_power_id") String user_power_id - ); -} diff --git a/app/src/main/java/com/info/sn/network/api/gankao/UserProductsApi.java b/app/src/main/java/com/info/sn/network/api/gankao/UserProductsApi.java deleted file mode 100644 index 92a9b6b..0000000 --- a/app/src/main/java/com/info/sn/network/api/gankao/UserProductsApi.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.info.sn.network.api.gankao; - -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.bean.gankao.UserProduct; -import com.info.sn.bean.gankao.UserProductCards; -import com.info.sn.network.UrlAddress; - -import java.util.List; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface UserProductsApi { - @GET(UrlAddress.GET_USER_PRODUCTS) - Observable>>> getUserProducts( - @Query("app_id") String app_id, - @Query("timestamp") String timestamp, - @Query("token") String token, - @Query("uid") String uid - ); -} diff --git a/app/src/main/java/com/info/sn/Statistics/AppInformation.java b/app/src/main/java/com/uiui/sn/Statistics/AppInformation.java similarity index 98% rename from app/src/main/java/com/info/sn/Statistics/AppInformation.java rename to app/src/main/java/com/uiui/sn/Statistics/AppInformation.java index 282f1fe..320b514 100644 --- a/app/src/main/java/com/info/sn/Statistics/AppInformation.java +++ b/app/src/main/java/com/uiui/sn/Statistics/AppInformation.java @@ -1,4 +1,4 @@ -package com.info.sn.Statistics; +package com.uiui.sn.Statistics; import android.annotation.TargetApi; import android.app.usage.UsageStats; @@ -9,8 +9,6 @@ import android.graphics.drawable.Drawable; import android.os.Build; import android.os.SystemClock; -import java.io.Serializable; - public class AppInformation { private UsageStats usageStats; diff --git a/app/src/main/java/com/info/sn/Statistics/StatisticsInfo.java b/app/src/main/java/com/uiui/sn/Statistics/StatisticsInfo.java similarity index 99% rename from app/src/main/java/com/info/sn/Statistics/StatisticsInfo.java rename to app/src/main/java/com/uiui/sn/Statistics/StatisticsInfo.java index f389d07..3dfc3ec 100644 --- a/app/src/main/java/com/info/sn/Statistics/StatisticsInfo.java +++ b/app/src/main/java/com/uiui/sn/Statistics/StatisticsInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.Statistics; +package com.uiui.sn.Statistics; import android.annotation.TargetApi; import android.app.usage.UsageEvents; @@ -8,7 +8,7 @@ import android.content.Context; import android.os.Build; -import com.info.sn.utils.ApkUtils; +import com.uiui.sn.utils.ApkUtils; import java.util.ArrayList; import java.util.Calendar; @@ -44,7 +44,7 @@ public class StatisticsInfo { } List packageList = new ArrayList() {{ - this.add("com.info.sn"); + this.add("com.uiui.sn"); this.add("com.android.launcher3"); this.add("com.android.settings"); this.add("com.appstore.uiui"); diff --git a/app/src/main/java/com/info/sn/activity/GuideActivity.java b/app/src/main/java/com/uiui/sn/activity/GuideActivity.java similarity index 93% rename from app/src/main/java/com/info/sn/activity/GuideActivity.java rename to app/src/main/java/com/uiui/sn/activity/GuideActivity.java index e11b0c9..b646552 100644 --- a/app/src/main/java/com/info/sn/activity/GuideActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/GuideActivity.java @@ -1,4 +1,4 @@ -package com.info.sn.activity; +package com.uiui.sn.activity; import android.text.TextUtils; import android.util.Log; @@ -10,10 +10,10 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.bumptech.glide.Glide; import com.github.chrisbanes.photoview.PhotoView; -import com.info.sn.R; -import com.info.sn.base.BaseActivity; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.manager.NetInterfaceManager; +import com.uiui.sn.R; +import com.uiui.sn.base.BaseActivity; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.manager.NetInterfaceManager; import io.reactivex.Observer; import io.reactivex.disposables.Disposable; diff --git a/app/src/main/java/com/info/sn/activity/PrivacyPolicyActivity.java b/app/src/main/java/com/uiui/sn/activity/PrivacyPolicyActivity.java similarity index 96% rename from app/src/main/java/com/info/sn/activity/PrivacyPolicyActivity.java rename to app/src/main/java/com/uiui/sn/activity/PrivacyPolicyActivity.java index b83396d..9c7136d 100644 --- a/app/src/main/java/com/info/sn/activity/PrivacyPolicyActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/PrivacyPolicyActivity.java @@ -1,13 +1,12 @@ -package com.info.sn.activity; +package com.uiui.sn.activity; import android.util.Log; -import android.view.MotionEvent; import android.view.View; import android.webkit.WebSettings; import android.webkit.WebView; -import com.info.sn.R; -import com.info.sn.base.BaseActivity; +import com.uiui.sn.R; +import com.uiui.sn.base.BaseActivity; import java.io.BufferedReader; import java.io.IOException; diff --git a/app/src/main/java/com/info/sn/activity/SNUidActivity.java b/app/src/main/java/com/uiui/sn/activity/SNUidActivity.java similarity index 88% rename from app/src/main/java/com/info/sn/activity/SNUidActivity.java rename to app/src/main/java/com/uiui/sn/activity/SNUidActivity.java index 8d5bd23..2245cb7 100644 --- a/app/src/main/java/com/info/sn/activity/SNUidActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/SNUidActivity.java @@ -1,9 +1,8 @@ -package com.info.sn.activity; +package com.uiui.sn.activity; import android.content.Intent; import android.text.TextUtils; import android.util.Log; -import android.view.View; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.recyclerview.widget.LinearLayoutManager; @@ -12,11 +11,11 @@ import androidx.recyclerview.widget.RecyclerView; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.info.sn.R; -import com.info.sn.adapter.SNUidAdapter; -import com.info.sn.base.BaseActivity; -import com.info.sn.bean.zuoye.SNUidBean; -import com.info.sn.utils.ToastUtil; +import com.uiui.sn.R; +import com.uiui.sn.adapter.SNUidAdapter; +import com.uiui.sn.base.BaseActivity; +import com.uiui.sn.bean.zuoye.SNUidBean; +import com.uiui.sn.utils.ToastUtil; import java.util.List; diff --git a/app/src/main/java/com/info/sn/activity/ScreenLockActivity.java b/app/src/main/java/com/uiui/sn/activity/ScreenLockActivity.java similarity index 92% rename from app/src/main/java/com/info/sn/activity/ScreenLockActivity.java rename to app/src/main/java/com/uiui/sn/activity/ScreenLockActivity.java index 575d14b..49b13d1 100644 --- a/app/src/main/java/com/info/sn/activity/ScreenLockActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/ScreenLockActivity.java @@ -1,14 +1,13 @@ -package com.info.sn.activity; +package com.uiui.sn.activity; import android.content.Intent; import android.os.Bundle; import android.view.KeyEvent; -import android.view.MotionEvent; import android.view.WindowManager; import androidx.appcompat.app.AppCompatActivity; -import com.info.sn.R; +import com.uiui.sn.R; public class ScreenLockActivity extends AppCompatActivity { diff --git a/app/src/main/java/com/info/sn/activity/UserAgreementActivity.java b/app/src/main/java/com/uiui/sn/activity/UserAgreementActivity.java similarity index 96% rename from app/src/main/java/com/info/sn/activity/UserAgreementActivity.java rename to app/src/main/java/com/uiui/sn/activity/UserAgreementActivity.java index 7ff8542..82264c0 100644 --- a/app/src/main/java/com/info/sn/activity/UserAgreementActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/UserAgreementActivity.java @@ -1,13 +1,12 @@ -package com.info.sn.activity; +package com.uiui.sn.activity; import android.util.Log; -import android.view.MotionEvent; import android.view.View; import android.webkit.WebSettings; import android.webkit.WebView; -import com.info.sn.R; -import com.info.sn.base.BaseActivity; +import com.uiui.sn.R; +import com.uiui.sn.base.BaseActivity; import java.io.BufferedReader; import java.io.IOException; diff --git a/app/src/main/java/com/info/sn/activity/main/MainActivity.java b/app/src/main/java/com/uiui/sn/activity/main/MainActivity.java similarity index 80% rename from app/src/main/java/com/info/sn/activity/main/MainActivity.java rename to app/src/main/java/com/uiui/sn/activity/main/MainActivity.java index 1d21155..a4257d9 100644 --- a/app/src/main/java/com/info/sn/activity/main/MainActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/main/MainActivity.java @@ -1,4 +1,4 @@ -package com.info.sn.activity.main; +package com.uiui.sn.activity.main; import android.content.BroadcastReceiver; import android.content.ComponentName; @@ -24,45 +24,48 @@ import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.viewpager.widget.ViewPager; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.blankj.utilcode.util.NetworkUtils; +import com.bumptech.glide.Glide; import com.flyco.tablayout.SlidingTabLayout; -import com.info.sn.BuildConfig; -import com.info.sn.R; -import com.info.sn.activity.GuideActivity; -import com.info.sn.activity.PrivacyPolicyActivity; -import com.info.sn.activity.SNUidActivity; -import com.info.sn.activity.UserAgreementActivity; -import com.info.sn.activity.selectegrade.SelecteGradeActivity; -import com.info.sn.base.BaseActivity; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.config.Configs; -import com.info.sn.config.Scheme; -import com.info.sn.dialog.ActivationDialog; -import com.info.sn.dialog.UserDebugDialog; -import com.info.sn.fragment.AppletQRCodeFragment; -import com.info.sn.fragment.BaseFragmentPagerAdapter; -import com.info.sn.fragment.QRCodeFragment; -import com.info.sn.jpush.ExampleUtil; -import com.info.sn.jpush.LocalBroadcastManager; -import com.info.sn.jpush.TagAliasOperatorHelper; -import com.info.sn.network.HTTPInterface; -import com.info.sn.receiver.BootReceiver; -import com.info.sn.service.DownloadService; -import com.info.sn.service.GuardService; -import com.info.sn.service.MainService; -import com.info.sn.service.ManagerService; -import com.info.sn.service.StepService; -import com.info.sn.manager.ControlManager; -import com.info.sn.manager.DeviceManager; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.LaunchTools; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.TimeUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.Utils; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.R; +import com.uiui.sn.activity.GuideActivity; +import com.uiui.sn.activity.PrivacyPolicyActivity; +import com.uiui.sn.activity.SNUidActivity; +import com.uiui.sn.activity.UserAgreementActivity; +import com.uiui.sn.activity.selectegrade.SelecteGradeActivity; +import com.uiui.sn.base.BaseActivity; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.config.Configs; +import com.uiui.sn.config.Scheme; +import com.uiui.sn.dialog.ActivationDialog; +import com.uiui.sn.dialog.UserDebugDialog; +import com.uiui.sn.fragment.AppletQRCodeFragment; +import com.uiui.sn.fragment.BaseFragmentPagerAdapter; +import com.uiui.sn.fragment.QRCodeFragment; +import com.uiui.sn.jpush.ExampleUtil; +import com.uiui.sn.jpush.LocalBroadcastManager; +import com.uiui.sn.jpush.TagAliasOperatorHelper; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.receiver.BootReceiver; +import com.uiui.sn.service.DownloadService; +import com.uiui.sn.service.GuardService; +import com.uiui.sn.service.MainService; +import com.uiui.sn.service.ManagerService; +import com.uiui.sn.service.StepService; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.manager.DeviceManager; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.LaunchTools; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.TimeUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.Utils; import org.jetbrains.annotations.NotNull; @@ -75,8 +78,10 @@ import java.util.Set; import butterknife.BindView; import butterknife.ButterKnife; import cn.jpush.android.api.JPushInterface; +import io.reactivex.Observer; +import io.reactivex.disposables.Disposable; -import static com.info.sn.jpush.TagAliasOperatorHelper.ACTION_SET; +import static com.uiui.sn.jpush.TagAliasOperatorHelper.ACTION_SET; public class MainActivity extends BaseActivity implements MainContact.MainView, NetworkUtils.OnNetworkStatusChangedListener { private final String TAG = MainActivity.class.getSimpleName(); @@ -88,72 +93,22 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, private long timeMillis; public static boolean isForeground = false; - @BindView(R.id.cl_update) - ConstraintLayout cl_update; - - @BindView(R.id.cl_vip) - ConstraintLayout cl_vip; - @BindView(R.id.tv_exit) TextView tv_exit; - @BindView(R.id.tv_title) TextView tv_title; - - @BindView(R.id.qr_code) - ImageView qr_code; - - @BindView(R.id.iv_logo) - ImageView iv_logo; - - @BindView(R.id.tv_note) - TextView tv_note; - - @BindView(R.id.tv_devsn) - TextView tv_devsn; - - @BindView(R.id.tv_username) - TextView tv_username; - - @BindView(R.id.tv_school) - TextView tv_school; - - @BindView(R.id.tv_grade) - TextView tv_grade; - - @BindView(R.id.tv_vip) - TextView tv_vip; - - @BindView(R.id.tv_version) - TextView tv_version; - @BindView(R.id.tv_customversion) TextView tv_customversion; - - @BindView(R.id.bt_activation) - TextView bt_activation; - - @BindView(R.id.bt_repurchase) - TextView bt_repurchase; - - @BindView(R.id.tv_guide) - TextView tv_guide; - - @BindView(R.id.tv_pripolicy) - TextView tv_pripolicy; - - @BindView(R.id.tv_useragreement) - TextView tv_useragreement; - - @BindView(R.id.tv_activate) - TextView tv_activate; - - @BindView(R.id.viewPager) - ViewPager viewPager; - - @BindView(R.id.slidingtablayout) - SlidingTabLayout slidingtablayout; - + @BindView(R.id.tv_sn) + TextView tv_sn; + @BindView(R.id.tv_bind) + TextView tv_bind; + @BindView(R.id.tv_version) + TextView tv_version; + @BindView(R.id.qr_code) + ImageView qr_code; + @BindView(R.id.iv_appqrcode) + ImageView iv_appqrcode; @BindView(R.id.iv_exit) ImageView iv_exit; @@ -182,26 +137,25 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, NetworkUtils.registerNetworkStatusChangedListener(this); setOnClickListener(); - tv_devsn.setText(Utils.getSerial()); - tv_version.setText(BuildConfig.VERSION_NAME); String rom = JGYUtils.getCustomVersion(); tv_customversion.setText(rom); - + tv_sn.setText("SN:" + Utils.getSerial()); + tv_version.setText(BuildConfig.VERSION_NAME); initTabLayout(); readOldData(); TimeTask task = new TimeTask(); task.execute("ntp.aliyun.com"); - + getQRCodeURL(); //更新设备信息之后停止停止这两个应用以免获取不到信息 int versionCode = (int) SPUtils.get(this, "versionCode", 0); if (versionCode < BuildConfig.VERSION_CODE) { - JGYUtils.getInstance().killBackgroundProcesses(this, "com.jiaoguanyi.os"); - JGYUtils.getInstance().killBackgroundProcesses(this, "com.gankao.gkwxhd"); +// JGYUtils.getInstance().killBackgroundProcesses(this, "com.jiaoguanyi.os"); +// JGYUtils.getInstance().killBackgroundProcesses(this, "com.gankao.gkwxhd"); SPUtils.put(this, "versionCode", BuildConfig.VERSION_CODE); } //启动应用市场 Intent bootIntent = new Intent(BootReceiver.BOOT_COMPLETED); - bootIntent.setComponent(new ComponentName("com.jgyapp.market", "com.jgyapp.market.receiver.BootReceiver")); + bootIntent.setComponent(new ComponentName("com.uiui.appstore", "com.uiui.appstore.receiver.BootReceiver")); sendBroadcast(bootIntent); } @@ -239,7 +193,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, registerReceiver(); setJpush(); HTTPInterface.sendAppUsed(this); - HTTPInterface.sendRunningApp(this); +// HTTPInterface.sendRunningApp(this); HTTPInterface.getAPPinfo(this); time0 = System.currentTimeMillis(); timeMillis = System.currentTimeMillis(); @@ -260,7 +214,6 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, @Override protected void onResume() { super.onResume(); - setClickable(); mPresenter.getUserInfo(); mPresenter.getSnInfo(); isForeground = true; @@ -289,6 +242,48 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, } } + private void getQRCodeURL() { + NetInterfaceManager.getInstance() + .getQRCodeApiControl() + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + Log.e("getQRCodeURL", "onSubscribe: "); + } + + @Override + public void onNext(BaseResponse baseResponse) { + Log.e("getQRCodeURL", "onNext: "); + if (baseResponse.code == 200) { + JSONObject jsonObject = (JSONObject) JSON.toJSON(baseResponse.data); + String url = jsonObject.getString("file"); + if (!TextUtils.isEmpty(url)) { + Glide.with(iv_appqrcode) + .load(url) + .dontAnimate() + .placeholder(getDrawable(R.drawable.applet_qrcode)) + .into(iv_appqrcode); + } else { + iv_appqrcode.setImageDrawable(getDrawable(R.drawable.applet_qrcode)); + } + } else { + iv_appqrcode.setImageDrawable(getDrawable(R.drawable.applet_qrcode)); + } + } + + @Override + public void onError(Throwable e) { + Log.e("getQRCodeURL", "onError: " + e.getMessage()); + } + + @Override + public void onComplete() { + Log.e("getQRCodeURL", "onComplete: "); + } + }); + } + + private boolean isDebugMode() { if (DeviceManager.isDebugMode()) { return true; @@ -341,17 +336,12 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); } - private void initTabLayout() { List fragmentList = new ArrayList<>(); FragmentManager fragmentManager = getSupportFragmentManager(); fragmentList.add(new AppletQRCodeFragment()); fragmentList.add(new QRCodeFragment()); BaseFragmentPagerAdapter adapter = new BaseFragmentPagerAdapter(fragmentManager, fragmentList); - viewPager.setAdapter(adapter); - viewPager.setOffscreenPageLimit(3); - String[] titles = new String[]{"第一步 ", " 第二步"}; - slidingtablayout.setViewPager(viewPager, titles); } private void setJpush() { @@ -374,12 +364,6 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, } private void readOldData() { - String sn_name = (String) SPUtils.get(this, Configs.UserName, defaultText); - tv_username.setText(sn_name); - String school = (String) SPUtils.get(this, Configs.UserSchool, defaultText); - tv_school.setText(school); - String grade = (String) SPUtils.get(this, Configs.UserGrade, defaultText); - tv_grade.setText(grade); int statu = (int) SPUtils.get(this, Configs.isLogined, 0); switch (statu) { default: @@ -397,19 +381,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, } private void setOnClickListener() { - setClickable(); - cl_update.setOnClickListener(view -> continuousClick(COUNTS, DURATION)); - cl_vip.setOnClickListener(view -> { - Intent intent = new Intent(); - intent.putExtra("json", SnUidJSON); - intent.setClass(MainActivity.this, SNUidActivity.class); - startActivity(intent); - }); - bt_activation.setOnClickListener(view -> { - startActivity(new Intent(MainActivity.this, SelecteGradeActivity.class)); -// showActivationDialog(); - }); - iv_exit.setOnClickListener(view -> finish()); + iv_exit.setOnClickListener(view -> lazyExit()); tv_title.setOnClickListener(view -> { if (isDebugMode()) { enterUserDebug(); @@ -417,15 +389,18 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, } }); - tv_guide.setOnClickListener(view -> startActivity(new Intent(MainActivity.this, GuideActivity.class))); - tv_pripolicy.setOnClickListener(v -> { - startActivity(new Intent(MainActivity.this, PrivacyPolicyActivity.class)); - }); - tv_useragreement.setOnClickListener(v -> { - startActivity(new Intent(MainActivity.this, UserAgreementActivity.class)); - }); } + private long mPreClickTime; + + private void lazyExit() { + if (System.currentTimeMillis() - mPreClickTime > 3000) { + ToastUtil.show("再按一次,退出"); + mPreClickTime = System.currentTimeMillis(); + } else { + finish(); + } + } private void showActivationDialog() { ActivationDialog dialog = new ActivationDialog(this); @@ -660,31 +635,6 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, public static String activation = "gankao_activation"; - private void setClickable() { - int isEnabled = Settings.System.getInt(getContentResolver(), activation, 0); - if (isEnabled == 0) { - bt_activation.setVisibility(View.VISIBLE); - bt_repurchase.setVisibility(View.GONE); - tv_vip.setVisibility(View.GONE); - bt_activation.setEnabled(true); - bt_activation.setText("激活学习系统"); - } else { - bt_activation.setVisibility(View.GONE); - bt_repurchase.setVisibility(View.VISIBLE); - tv_vip.setVisibility(View.VISIBLE); - bt_activation.setEnabled(false); - bt_activation.setText("已激活学习系统"); - } - if (BuildConfig.DEBUG) { - bt_activation.setVisibility(View.VISIBLE); - bt_repurchase.setVisibility(View.GONE); - tv_vip.setVisibility(View.VISIBLE); - bt_activation.setEnabled(true); - bt_activation.setText("激活学习系统"); - } - } - - private void startService() { startService(new Intent(this, MainService.class)); startService(new Intent(this, GuardService.class)); @@ -721,7 +671,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, //for receive customer msg from jpush server private MessageReceiver mMessageReceiver = new MessageReceiver(); - private String MESSAGE_RECEIVED_ACTION = "com.info.sn.MESSAGE_RECEIVED_ACTION"; + private String MESSAGE_RECEIVED_ACTION = "com.uiui.sn.MESSAGE_RECEIVED_ACTION"; private String KEY_TITLE = "title"; private String KEY_MESSAGE = "message"; private String KEY_EXTRAS = "extras"; @@ -760,6 +710,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, int code = response.code; //设备已经绑定 if (code == 200) { + tv_bind.setText(getString(R.string.bind_succeed)); UserInfo userInfo = response.data; boolean username = Settings.System.putString(getContentResolver(), "UserInfo_username", userInfo.getSn_name()); boolean gread = Settings.System.putString(getContentResolver(), "UserInfo_grade", userInfo.getGrade()); @@ -768,27 +719,23 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, SPUtils.put(this, "sn_id", userInfo.getId()); if (!TextUtils.isEmpty(userInfo.getSn_name())) { SPUtils.put(this, "USERINFO_NAME", userInfo.getSn_name()); - tv_username.setText(userInfo.getSn_name()); } if (!TextUtils.isEmpty(userInfo.getSchool())) { SPUtils.put(this, "USERINFO_SCHOOL", userInfo.getSchool()); - tv_school.setText(userInfo.getSchool()); } if (!TextUtils.isEmpty(userInfo.getGrade())) { SPUtils.put(this, "USERINFO_GRADE", userInfo.getGrade()); - tv_grade.setText(userInfo.getGrade()); } mPresenter.getLocked(); } //设备没有绑定 else if (code == 300) { - tv_username.setText(defaultText); - tv_school.setText(defaultText); - tv_grade.setText(defaultText); + tv_bind.setText(getString(R.string.scan_tips)); ControlManager.getInstance().setDisableSetting(); } //没有授权的设备 else if (code == 400) { + tv_bind.setText("设备未经授权"); ToastUtil.show("设备未经授权"); Log.e(TAG, "setInfo: " + "设备未经授权"); ControlManager.getInstance().setDisableSetting(); @@ -820,7 +767,6 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, } else { mPresenter.registerGankao(); } - setClickable(); } @Override @@ -907,6 +853,4 @@ public class MainActivity extends BaseActivity implements MainContact.MainView, public void setScreenLock() { Log.e(TAG, "SettingFinished: " + (System.currentTimeMillis() - timeMillis) + " ms"); } - - } diff --git a/app/src/main/java/com/info/sn/activity/main/MainContact.java b/app/src/main/java/com/uiui/sn/activity/main/MainContact.java similarity index 91% rename from app/src/main/java/com/info/sn/activity/main/MainContact.java rename to app/src/main/java/com/uiui/sn/activity/main/MainContact.java index 5215181..2172c46 100644 --- a/app/src/main/java/com/info/sn/activity/main/MainContact.java +++ b/app/src/main/java/com/uiui/sn/activity/main/MainContact.java @@ -1,13 +1,13 @@ -package com.info.sn.activity.main; +package com.uiui.sn.activity.main; import android.graphics.Bitmap; import com.alibaba.fastjson.JSONObject; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.mvp.BasePresenter; -import com.info.sn.mvp.BaseView; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.mvp.BasePresenter; +import com.uiui.sn.mvp.BaseView; import java.util.List; diff --git a/app/src/main/java/com/info/sn/activity/main/MainPresenter.java b/app/src/main/java/com/uiui/sn/activity/main/MainPresenter.java similarity index 71% rename from app/src/main/java/com/info/sn/activity/main/MainPresenter.java rename to app/src/main/java/com/uiui/sn/activity/main/MainPresenter.java index 578d6ae..90b69de 100644 --- a/app/src/main/java/com/info/sn/activity/main/MainPresenter.java +++ b/app/src/main/java/com/uiui/sn/activity/main/MainPresenter.java @@ -1,4 +1,4 @@ -package com.info.sn.activity.main; +package com.uiui.sn.activity.main; import android.annotation.SuppressLint; import android.content.Context; @@ -19,36 +19,35 @@ import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.JsonParser; import com.google.gson.reflect.TypeToken; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.bean.gankao.CreateUserBean; -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.bean.gankao.PowerUser; -import com.info.sn.bean.zuoye.AppInfo; -import com.info.sn.bean.zuoye.AppStart; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.Label; -import com.info.sn.bean.zuoye.browser.BrowserApiData; -import com.info.sn.bean.zuoye.browser.BrowserBean; -import com.info.sn.bean.zuoye.UserAvatarInfo; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.config.Configs; -import com.info.sn.config.Scheme; -import com.info.sn.manager.AmapManager; -import com.info.sn.manager.ControlManager; -import com.info.sn.manager.NetInterfaceManager; -import com.info.sn.network.HTTPInterface; -import com.info.sn.network.api.BrowserLabel; -import com.info.sn.service.ManagerService; -import com.info.sn.utils.ApkUtils; -import com.info.sn.utils.CXAESUtil; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.LaunchTools; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ServiceAliveUtils; -import com.info.sn.utils.TimeUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.URLUtils; -import com.info.sn.utils.Utils; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.bean.gankao.CreateUserBean; +import com.uiui.sn.bean.gankao.GankaoBaseResponse; +import com.uiui.sn.bean.gankao.PowerUser; +import com.uiui.sn.bean.zuoye.AppInfo; +import com.uiui.sn.bean.zuoye.AppStart; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.Label; +import com.uiui.sn.bean.zuoye.browser.BrowserApiData; +import com.uiui.sn.bean.zuoye.browser.BrowserBean; +import com.uiui.sn.bean.zuoye.UserAvatarInfo; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.config.Configs; +import com.uiui.sn.config.Scheme; +import com.uiui.sn.manager.AmapManager; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.service.ManagerService; +import com.uiui.sn.utils.ApkUtils; +import com.uiui.sn.utils.CXAESUtil; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.LaunchTools; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ServiceAliveUtils; +import com.uiui.sn.utils.TimeUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.URLUtils; +import com.uiui.sn.utils.Utils; import com.trello.rxlifecycle2.LifecycleProvider; import com.trello.rxlifecycle2.android.ActivityEvent; @@ -66,6 +65,8 @@ import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.Disposable; import io.reactivex.schedulers.Schedulers; +import static com.uiui.sn.service.ManagerService.LOCK_STATE; + /** * @author jgy02 */ @@ -103,60 +104,6 @@ public class MainPresenter implements MainContact.Presenter { @Override public void queryPowerUserList() { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - - NetInterfaceManager.getInstance() - .getQueryPowerUserListControl() - .queryPowerUserList(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e("queryPowerUserList", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e("queryPowerUserList", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - int code = gankaoBaseResponse.code; - if (code == 10000) { - Gson gson = new Gson(); - Type type = new TypeToken>() { - }.getType(); - JsonObject jsonObject = JsonParser.parseString(gson.toJson(gankaoBaseResponse.data)).getAsJsonObject(); - JsonArray jsonArray = jsonObject.getAsJsonArray("powerlist"); - List powerUserList = gson.fromJson(gson.toJson(jsonArray), type); - HashMap hashMap = new HashMap<>(); - for (PowerUser powerUser : powerUserList) { - hashMap.put(powerUser.getUserID(), powerUser); - } - PowerUser powerUser = hashMap.get(Utils.getSerial()); - if (powerUser != null) { - String date = powerUser.getAuthorizationDate(); - mView.setPowerUserList(date); - } else { - mView.setPowerUserList(""); - } - } - } - - @Override - public void onError(Throwable e) { - Log.e("queryPowerUserList", "onError: " + e.getMessage()); - onComplete(); - } - - @Override - public void onComplete() { - Log.e("queryPowerUserList", "onComplete: "); - } - }); } @@ -198,167 +145,18 @@ public class MainPresenter implements MainContact.Presenter { */ @Override public void getGankaoUID() { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - Log.e(TAG + TAG, "getGankaoUID: uid: " + uid); - if (TextUtils.isEmpty(uid) || "0".equals(uid)) { - ToastUtil.show("设备未绑定账号,请绑定后重试"); - return; - } - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - String token = LaunchTools.getToken(params); - NetInterfaceManager.getInstance() - .getCreateUserControl() - .createUser(appid, timestamp, uid, token) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "getGankaoUID", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "getGankaoUID", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10002) { - Type type = new TypeToken() { - }.getType(); - Gson gson = new Gson(); - CreateUserBean userBean = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - String gankaoPartnerUID = userBean.getGankaoPartnerUID(); - int gankaoUIDint = userBean.getGankaoUID(); - String gankaoUID = String.valueOf(gankaoUIDint); - Log.e(TAG + "getGankaoUID", "onNext: gankaoUID: " + gankaoUID); - SPUtils.put(mContext, "gankaoUID", gankaoUID); - Settings.System.putString(mContext.getContentResolver(), "gankaoUID", gankaoUID); - int isNew = userBean.getIsNew(); - mView.setGankaoUID(gankaoUID); - } else { - mView.setGankaoUID(""); - } - } - - @Override - public void onError(Throwable e) { - mView.setGankaoUID(""); - Log.e(TAG + "getGankaoUID", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e(TAG + "getGankaoUID", "onComplete: "); - } - }); } @Override public void queryAvailableProduct(String gankaoUID) { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - NetInterfaceManager.getInstance() - .getQueryProductControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "queryAvailableProduct", "onSubscribe: "); - } - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "queryAvailableProduct", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10000) { - Type type = new TypeToken>() { - }.getType(); - Gson gson = new Gson(); - List availableProductList = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - mView.setAvailableProduct(availableProductList, gankaoUID); - } else { - ToastUtil.show("获取激活套餐失败"); - mView.setAvailableProduct(new ArrayList(), gankaoUID); - } - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "queryAvailableProduct", "onError: " + e.getMessage()); - mView.setAvailableProduct(new ArrayList(), gankaoUID); - } - - @Override - public void onComplete() { - Log.e(TAG + "queryAvailableProduct", "onComplete: "); - } - }); } @Override public void activeUser(@NotNull AvailableProduct product, String gankaoUID) { - String specification_id = product.getSpecification_id(); - Log.e(TAG, "activeUser: specification_id: " + specification_id); - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - params.put("specification_id", String.valueOf(specification_id)); - NetInterfaceManager.getInstance() - .getActiveUserControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params), uid, specification_id) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "activeUser", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "activeUser", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - switch (gankaoBaseResponse.code) { - case 10000: - case 50000: - Settings.System.putInt(mContext.getContentResolver(), MainActivity.activation, 1); -// sendUid(product, gankaoUID); - break; - default: - Settings.System.putInt(mContext.getContentResolver(), MainActivity.activation, 0); - break; - - } - mView.activeUserFinish(gankaoBaseResponse.code); - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "activeUser", "onError: "); - mView.activeUserFinish(0); - } - - @Override - public void onComplete() { - Log.e(TAG + "activeUser", "onComplete: "); - } - }); } @Override @@ -519,59 +317,7 @@ public class MainPresenter implements MainContact.Presenter { @Override public void registerGankao() { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - - NetInterfaceManager.getInstance() - .getCreateUserControl() - .createUser(appid, timestamp, uid, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "getGankaoUID", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "getGankaoUID", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10002) { - Type type = new TypeToken() { - }.getType(); - Gson gson = new Gson(); - CreateUserBean userBean = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - String gankaoPartnerUID = userBean.getGankaoPartnerUID(); - int gankaoUIDint = userBean.getGankaoUID(); - String gankaoUID = String.valueOf(gankaoUIDint); - Log.e(TAG + "getGankaoUID", "onNext: gankaoUID: " + gankaoUID); - SPUtils.put(mContext, "gankaoUID", gankaoUID); - Settings.System.putString(mContext.getContentResolver(), "gankaoUID", gankaoUID); - int isNew = userBean.getIsNew(); - mView.setGankao(gankaoUID); - } else { - mView.setGankao(""); - } - } - - @Override - public void onError(Throwable e) { - mView.setGankao(""); - Log.e(TAG + "getGankaoUID", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e(TAG + "getGankaoUID", "onComplete: "); - } - }); } @Override @@ -745,7 +491,7 @@ public class MainPresenter implements MainContact.Presenter { @Override public void onNext(BaseResponse> listBaseResponse) { - Log.e(TAG + "getForceInstall", "onNext: "); + Log.e(TAG + "getForceInstall", "onNext: " + listBaseResponse); int code = listBaseResponse.code; if (code == 200) { List appInfos = listBaseResponse.data; @@ -1065,6 +811,7 @@ public class MainPresenter implements MainContact.Presenter { if (!ServiceAliveUtils.isServiceAlice(mContext, ManagerService.class.getName())) { mContext.startService(new Intent(mContext, ManagerService.class)); } + SPUtils.put(mContext, LOCK_STATE, is_screen_lock); Intent intent = new Intent(); // intent.putExtra("name", name); if (1 == is_screen_lock) { diff --git a/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradeActivity.java b/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradeActivity.java similarity index 95% rename from app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradeActivity.java rename to app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradeActivity.java index d64fcb7..fd6e6c8 100644 --- a/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradeActivity.java +++ b/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradeActivity.java @@ -1,10 +1,6 @@ -package com.info.sn.activity.selectegrade; - -import androidx.appcompat.app.AppCompatActivity; +package com.uiui.sn.activity.selectegrade; import android.net.Uri; -import android.os.Bundle; -import android.provider.Settings; import android.text.TextUtils; import android.view.View; import android.widget.Button; @@ -13,18 +9,15 @@ import android.widget.RadioGroup; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.info.sn.R; -import com.info.sn.activity.main.MainActivity; -import com.info.sn.base.BaseActivity; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.bean.gankao.PowerUser; -import com.info.sn.config.Scheme; -import com.info.sn.utils.LaunchTools; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.Utils; +import com.uiui.sn.R; +import com.uiui.sn.base.BaseActivity; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.bean.gankao.PowerUser; +import com.uiui.sn.config.Scheme; +import com.uiui.sn.utils.LaunchTools; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.Utils; import java.text.ParseException; import java.text.SimpleDateFormat; diff --git a/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradeContact.java b/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradeContact.java similarity index 75% rename from app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradeContact.java rename to app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradeContact.java index 994143e..b98864b 100644 --- a/app/src/main/java/com/info/sn/activity/selectegrade/SelecteGradeContact.java +++ b/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradeContact.java @@ -1,10 +1,9 @@ -package com.info.sn.activity.selectegrade; +package com.uiui.sn.activity.selectegrade; -import com.info.sn.activity.main.MainContact; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.bean.gankao.PowerUser; -import com.info.sn.mvp.BasePresenter; -import com.info.sn.mvp.BaseView; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.bean.gankao.PowerUser; +import com.uiui.sn.mvp.BasePresenter; +import com.uiui.sn.mvp.BaseView; import java.util.List; diff --git a/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradePresenter.java b/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradePresenter.java new file mode 100644 index 0000000..117e403 --- /dev/null +++ b/app/src/main/java/com/uiui/sn/activity/selectegrade/SelecteGradePresenter.java @@ -0,0 +1,163 @@ +package com.uiui.sn.activity.selectegrade; + +import android.content.Context; +import android.provider.Settings; +import android.text.TextUtils; +import android.util.Log; + +import com.alibaba.fastjson.JSONObject; +import com.google.gson.Gson; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import com.google.gson.reflect.TypeToken; +import com.uiui.sn.activity.main.MainActivity; +import com.uiui.sn.activity.main.MainPresenter; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.bean.gankao.CreateUserBean; +import com.uiui.sn.bean.gankao.GankaoBaseResponse; +import com.uiui.sn.bean.gankao.PowerUser; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.Response; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.config.Scheme; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.utils.LaunchTools; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.Utils; +import com.trello.rxlifecycle2.LifecycleProvider; +import com.trello.rxlifecycle2.android.ActivityEvent; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +import io.reactivex.Observer; +import io.reactivex.android.schedulers.AndroidSchedulers; +import io.reactivex.disposables.Disposable; +import io.reactivex.schedulers.Schedulers; + +public class SelecteGradePresenter implements SelecteGradeContact.Presenter { + private String TAG; + + private SelecteGradeContact.MainView mView; + private Context mContext; + + SelecteGradePresenter(Context context) { + this.mContext = context; + TAG = context.getClass().getSimpleName() + "." + MainPresenter.class.getSimpleName() + ":"; + } + + private LifecycleProvider provider; + + public void setProvider(LifecycleProvider provider) { + this.provider = provider; + } + + public LifecycleProvider getProvider() { + return provider; + } + + @Override + public void attachView(SelecteGradeContact.MainView view) { + this.mView = view; + } + + @Override + public void detachView() { + this.mView = null; + } + + @Override + public void checkSN() { + NetInterfaceManager.getInstance() + .getsnInfoControl() + .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) + .subscribe(new Observer>() { + @Override + public void onSubscribe(Disposable d) { + Log.e(TAG + "checkSN", "onSubscribe: "); + } + + @Override + public void onNext(BaseResponse userInfoBaseResponse) { + Log.e(TAG + "checkSN", "onNext: "); + int code = userInfoBaseResponse.code; + mView.checkSNResult(code); + } + + @Override + public void onError(Throwable e) { + Log.e(TAG + "checkSN", "onError: " + e.getMessage()); + mView.checkSNResult(404); + onComplete(); + } + + @Override + public void onComplete() { + Log.e(TAG + TAG + "checkSN", "onComplete: "); + } + }); + } + + @Override + public void getGankaoUID() { + + } + + @Override + public void queryAvailableProduct() { + + } + + @Override + public void activeUser(AvailableProduct product, int grade) { + + } + + @Override + public void queryPowerUserList(int grade) { + + } + + @Override + public void sendUid(String jsonString, int grade) { + String gankaoUID = Settings.System.getString(mContext.getContentResolver(), "gankaoUID"); + if (TextUtils.isEmpty(gankaoUID)) { + ToastUtil.show("获取设备UID失败,请重新激活"); + } + Log.e(TAG, "sendUid: " + jsonString); + NetInterfaceManager.getInstance() + .getSaveSnUidApiControl() + .saveSnUid(Utils.getSerial(), gankaoUID, grade, jsonString) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .compose(getProvider().bindUntilEvent(ActivityEvent.DESTROY)) + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + Log.e(TAG + "sendUid", "onSubscribe: "); + } + + @Override + public void onNext(Response response) { + Log.e(TAG + "sendUid", "onNext: " + JSONObject.toJSONString(response)); + mView.sendUidFinish(response.code); + } + + @Override + public void onError(Throwable e) { + Log.e(TAG + "sendUid", "onError: " + e.getMessage()); + mView.sendUidFinish(404); + onComplete(); + } + + @Override + public void onComplete() { + Log.e(TAG + "sendUid", "onComplete: "); + } + }); + } +} diff --git a/app/src/main/java/com/info/sn/adapter/SNUidAdapter.java b/app/src/main/java/com/uiui/sn/adapter/SNUidAdapter.java similarity index 95% rename from app/src/main/java/com/info/sn/adapter/SNUidAdapter.java rename to app/src/main/java/com/uiui/sn/adapter/SNUidAdapter.java index 0734ec4..58a5d67 100644 --- a/app/src/main/java/com/info/sn/adapter/SNUidAdapter.java +++ b/app/src/main/java/com/uiui/sn/adapter/SNUidAdapter.java @@ -1,4 +1,4 @@ -package com.info.sn.adapter; +package com.uiui.sn.adapter; import android.view.View; import android.view.ViewGroup; @@ -8,8 +8,8 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; -import com.info.sn.R; -import com.info.sn.bean.zuoye.SNUidBean; +import com.uiui.sn.R; +import com.uiui.sn.bean.zuoye.SNUidBean; import java.util.List; diff --git a/app/src/main/java/com/info/sn/base/BaseActivity.java b/app/src/main/java/com/uiui/sn/base/BaseActivity.java similarity index 90% rename from app/src/main/java/com/info/sn/base/BaseActivity.java rename to app/src/main/java/com/uiui/sn/base/BaseActivity.java index e90ca3c..c8e4bf8 100644 --- a/app/src/main/java/com/info/sn/base/BaseActivity.java +++ b/app/src/main/java/com/uiui/sn/base/BaseActivity.java @@ -1,15 +1,13 @@ -package com.info.sn.base; +package com.uiui.sn.base; import android.app.ActivityManager; -import android.graphics.Bitmap; import android.os.Build; import android.os.Bundle; import androidx.annotation.Nullable; -import com.info.sn.BuildConfig; -import com.info.sn.R; -import com.info.sn.utils.StatusBarUtil; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.R; import com.trello.rxlifecycle2.components.support.RxAppCompatActivity; import com.zackratos.ultimatebarx.ultimatebarx.java.UltimateBarX; diff --git a/app/src/main/java/com/info/sn/base/BaseApplication.java b/app/src/main/java/com/uiui/sn/base/BaseApplication.java similarity index 96% rename from app/src/main/java/com/info/sn/base/BaseApplication.java rename to app/src/main/java/com/uiui/sn/base/BaseApplication.java index 099be46..c646efa 100644 --- a/app/src/main/java/com/info/sn/base/BaseApplication.java +++ b/app/src/main/java/com/uiui/sn/base/BaseApplication.java @@ -1,27 +1,24 @@ -package com.info.sn.base; +package com.uiui.sn.base; import android.annotation.SuppressLint; import android.app.Application; import android.content.Context; import android.os.Handler; import android.os.Looper; -import android.os.Process; import android.util.Log; import com.arialyy.aria.core.Aria; -import com.blankj.utilcode.util.ProcessUtils; -import com.info.sn.BuildConfig; -import com.info.sn.jpush.TagAliasOperatorHelper; -import com.info.sn.manager.AmapManager; -import com.info.sn.manager.NetInterfaceManager; -import com.info.sn.manager.ControlManager; -import com.info.sn.manager.DeviceManager; -import com.info.sn.network.HTTPInterface; -import com.info.sn.network.UrlAddress; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.SystemUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.Utils; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.jpush.TagAliasOperatorHelper; +import com.uiui.sn.manager.AmapManager; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.manager.DeviceManager; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.network.UrlAddress; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.Utils; import org.jetbrains.annotations.NotNull; diff --git a/app/src/main/java/com/info/sn/base/CheckPermissionsActivity.java b/app/src/main/java/com/uiui/sn/base/CheckPermissionsActivity.java similarity index 99% rename from app/src/main/java/com/info/sn/base/CheckPermissionsActivity.java rename to app/src/main/java/com/uiui/sn/base/CheckPermissionsActivity.java index 2241441..b25c6ab 100644 --- a/app/src/main/java/com/info/sn/base/CheckPermissionsActivity.java +++ b/app/src/main/java/com/uiui/sn/base/CheckPermissionsActivity.java @@ -1,7 +1,7 @@ /** * */ -package com.info.sn.base; +package com.uiui.sn.base; import android.Manifest; import android.annotation.TargetApi; @@ -17,7 +17,7 @@ import android.provider.Settings; import android.view.KeyEvent; -import com.info.sn.R; +import com.uiui.sn.R; import java.lang.reflect.Method; import java.util.ArrayList; diff --git a/app/src/main/java/com/info/sn/bean/gankao/ActiveUser.java b/app/src/main/java/com/uiui/sn/bean/gankao/ActiveUser.java similarity index 71% rename from app/src/main/java/com/info/sn/bean/gankao/ActiveUser.java rename to app/src/main/java/com/uiui/sn/bean/gankao/ActiveUser.java index d913eae..1327fd8 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/ActiveUser.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/ActiveUser.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/gankao/AvailableProduct.java b/app/src/main/java/com/uiui/sn/bean/gankao/AvailableProduct.java similarity index 98% rename from app/src/main/java/com/info/sn/bean/gankao/AvailableProduct.java rename to app/src/main/java/com/uiui/sn/bean/gankao/AvailableProduct.java index f4cf93f..eeb4e41 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/AvailableProduct.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/AvailableProduct.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/gankao/CancelUserPower.java b/app/src/main/java/com/uiui/sn/bean/gankao/CancelUserPower.java similarity index 94% rename from app/src/main/java/com/info/sn/bean/gankao/CancelUserPower.java rename to app/src/main/java/com/uiui/sn/bean/gankao/CancelUserPower.java index 5d4b7ee..98020c3 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/CancelUserPower.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/CancelUserPower.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/gankao/CreateUserBean.java b/app/src/main/java/com/uiui/sn/bean/gankao/CreateUserBean.java similarity index 97% rename from app/src/main/java/com/info/sn/bean/gankao/CreateUserBean.java rename to app/src/main/java/com/uiui/sn/bean/gankao/CreateUserBean.java index b0d41b7..f777fbf 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/CreateUserBean.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/CreateUserBean.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/gankao/GankaoBaseResponse.java b/app/src/main/java/com/uiui/sn/bean/gankao/GankaoBaseResponse.java similarity index 95% rename from app/src/main/java/com/info/sn/bean/gankao/GankaoBaseResponse.java rename to app/src/main/java/com/uiui/sn/bean/gankao/GankaoBaseResponse.java index 5f3dca6..910135b 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/GankaoBaseResponse.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/GankaoBaseResponse.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import androidx.annotation.NonNull; diff --git a/app/src/main/java/com/info/sn/bean/gankao/PowerUser.java b/app/src/main/java/com/uiui/sn/bean/gankao/PowerUser.java similarity index 98% rename from app/src/main/java/com/info/sn/bean/gankao/PowerUser.java rename to app/src/main/java/com/uiui/sn/bean/gankao/PowerUser.java index 153a687..74ca3e8 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/PowerUser.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/PowerUser.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/com/info/sn/bean/gankao/UserProduct.java b/app/src/main/java/com/uiui/sn/bean/gankao/UserProduct.java similarity index 98% rename from app/src/main/java/com/info/sn/bean/gankao/UserProduct.java rename to app/src/main/java/com/uiui/sn/bean/gankao/UserProduct.java index 33da823..b050965 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/UserProduct.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/UserProduct.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import androidx.annotation.NonNull; diff --git a/app/src/main/java/com/info/sn/bean/gankao/UserProductCards.java b/app/src/main/java/com/uiui/sn/bean/gankao/UserProductCards.java similarity index 90% rename from app/src/main/java/com/info/sn/bean/gankao/UserProductCards.java rename to app/src/main/java/com/uiui/sn/bean/gankao/UserProductCards.java index 1ed6265..0197376 100644 --- a/app/src/main/java/com/info/sn/bean/gankao/UserProductCards.java +++ b/app/src/main/java/com/uiui/sn/bean/gankao/UserProductCards.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.gankao; +package com.uiui.sn.bean.gankao; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/AppInfo.java b/app/src/main/java/com/uiui/sn/bean/zuoye/AppInfo.java similarity index 99% rename from app/src/main/java/com/info/sn/bean/zuoye/AppInfo.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/AppInfo.java index a5a3e7d..b3bedf0 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/AppInfo.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/AppInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/AppJump.java b/app/src/main/java/com/uiui/sn/bean/zuoye/AppJump.java similarity index 95% rename from app/src/main/java/com/info/sn/bean/zuoye/AppJump.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/AppJump.java index 9d5da09..b47d98c 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/AppJump.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/AppJump.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import androidx.annotation.NonNull; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/AppStart.java b/app/src/main/java/com/uiui/sn/bean/zuoye/AppStart.java similarity index 98% rename from app/src/main/java/com/info/sn/bean/zuoye/AppStart.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/AppStart.java index e6baf17..f4ee1bc 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/AppStart.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/AppStart.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/AppUploadInfo.java b/app/src/main/java/com/uiui/sn/bean/zuoye/AppUploadInfo.java similarity index 96% rename from app/src/main/java/com/info/sn/bean/zuoye/AppUploadInfo.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/AppUploadInfo.java index fb4add6..6bd0956 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/AppUploadInfo.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/AppUploadInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/AppUsed.java b/app/src/main/java/com/uiui/sn/bean/zuoye/AppUsed.java similarity index 95% rename from app/src/main/java/com/info/sn/bean/zuoye/AppUsed.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/AppUsed.java index bad251d..3fbddfc 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/AppUsed.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/AppUsed.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/BaseResponse.java b/app/src/main/java/com/uiui/sn/bean/zuoye/BaseResponse.java similarity index 87% rename from app/src/main/java/com/info/sn/bean/zuoye/BaseResponse.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/BaseResponse.java index 37e33fe..3c76817 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/BaseResponse.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/BaseResponse.java @@ -1,9 +1,8 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import androidx.annotation.NonNull; import com.google.gson.Gson; -import com.google.gson.JsonObject; import com.google.gson.JsonParser; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/Label.java b/app/src/main/java/com/uiui/sn/bean/zuoye/Label.java similarity index 95% rename from app/src/main/java/com/info/sn/bean/zuoye/Label.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/Label.java index df30830..d8a002e 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/Label.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/Label.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/LocalAppInfo.java b/app/src/main/java/com/uiui/sn/bean/zuoye/LocalAppInfo.java similarity index 99% rename from app/src/main/java/com/info/sn/bean/zuoye/LocalAppInfo.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/LocalAppInfo.java index b3b7c5e..37a30db 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/LocalAppInfo.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/LocalAppInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import android.graphics.drawable.Drawable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/Response.java b/app/src/main/java/com/uiui/sn/bean/zuoye/Response.java similarity index 86% rename from app/src/main/java/com/info/sn/bean/zuoye/Response.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/Response.java index 294d64b..afb8a27 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/Response.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/Response.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/SNUidBean.java b/app/src/main/java/com/uiui/sn/bean/zuoye/SNUidBean.java similarity index 97% rename from app/src/main/java/com/info/sn/bean/zuoye/SNUidBean.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/SNUidBean.java index 32c10bb..cbeaa49 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/SNUidBean.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/SNUidBean.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/SystemSettings.java b/app/src/main/java/com/uiui/sn/bean/zuoye/SystemSettings.java similarity index 99% rename from app/src/main/java/com/info/sn/bean/zuoye/SystemSettings.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/SystemSettings.java index b5b78a2..017649a 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/SystemSettings.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/SystemSettings.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/UserAvatarInfo.java b/app/src/main/java/com/uiui/sn/bean/zuoye/UserAvatarInfo.java similarity index 96% rename from app/src/main/java/com/info/sn/bean/zuoye/UserAvatarInfo.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/UserAvatarInfo.java index 22a447c..9b251b7 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/UserAvatarInfo.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/UserAvatarInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/UserInfo.java b/app/src/main/java/com/uiui/sn/bean/zuoye/UserInfo.java similarity index 98% rename from app/src/main/java/com/info/sn/bean/zuoye/UserInfo.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/UserInfo.java index 7509117..cb7aef2 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/UserInfo.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/UserInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye; +package com.uiui.sn.bean.zuoye; import java.io.Serializable; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/browser/BrowserApiData.java b/app/src/main/java/com/uiui/sn/bean/zuoye/browser/BrowserApiData.java similarity index 94% rename from app/src/main/java/com/info/sn/bean/zuoye/browser/BrowserApiData.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/browser/BrowserApiData.java index 189da0e..abe8f82 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/browser/BrowserApiData.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/browser/BrowserApiData.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye.browser; +package com.uiui.sn.bean.zuoye.browser; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/com/info/sn/bean/zuoye/browser/BrowserBean.java b/app/src/main/java/com/uiui/sn/bean/zuoye/browser/BrowserBean.java similarity index 94% rename from app/src/main/java/com/info/sn/bean/zuoye/browser/BrowserBean.java rename to app/src/main/java/com/uiui/sn/bean/zuoye/browser/BrowserBean.java index 9af0995..9eef94d 100644 --- a/app/src/main/java/com/info/sn/bean/zuoye/browser/BrowserBean.java +++ b/app/src/main/java/com/uiui/sn/bean/zuoye/browser/BrowserBean.java @@ -1,4 +1,4 @@ -package com.info.sn.bean.zuoye.browser; +package com.uiui.sn.bean.zuoye.browser; import androidx.annotation.NonNull; diff --git a/app/src/main/java/com/info/sn/config/CommonData.java b/app/src/main/java/com/uiui/sn/config/CommonData.java similarity index 97% rename from app/src/main/java/com/info/sn/config/CommonData.java rename to app/src/main/java/com/uiui/sn/config/CommonData.java index d71ae65..79411db 100644 --- a/app/src/main/java/com/info/sn/config/CommonData.java +++ b/app/src/main/java/com/uiui/sn/config/CommonData.java @@ -1,4 +1,4 @@ -package com.info.sn.config; +package com.uiui.sn.config; diff --git a/app/src/main/java/com/info/sn/config/Configs.java b/app/src/main/java/com/uiui/sn/config/Configs.java similarity index 95% rename from app/src/main/java/com/info/sn/config/Configs.java rename to app/src/main/java/com/uiui/sn/config/Configs.java index 7935101..dcb6633 100644 --- a/app/src/main/java/com/info/sn/config/Configs.java +++ b/app/src/main/java/com/uiui/sn/config/Configs.java @@ -1,4 +1,4 @@ -package com.info.sn.config; +package com.uiui.sn.config; public class Configs { public static String isLogined = "isLogined"; diff --git a/app/src/main/java/com/info/sn/config/Scheme.java b/app/src/main/java/com/uiui/sn/config/Scheme.java similarity index 97% rename from app/src/main/java/com/info/sn/config/Scheme.java rename to app/src/main/java/com/uiui/sn/config/Scheme.java index 9792a1e..b7beff0 100644 --- a/app/src/main/java/com/info/sn/config/Scheme.java +++ b/app/src/main/java/com/uiui/sn/config/Scheme.java @@ -1,4 +1,4 @@ -package com.info.sn.config; +package com.uiui.sn.config; import android.app.Activity; import android.content.Context; @@ -8,9 +8,9 @@ import android.text.TextUtils; import android.util.Log; -import com.info.sn.utils.CXAESUtil; -import com.info.sn.utils.Hash; -import com.info.sn.utils.Utils; +import com.uiui.sn.utils.CXAESUtil; +import com.uiui.sn.utils.Hash; +import com.uiui.sn.utils.Utils; import java.io.UnsupportedEncodingException; diff --git a/app/src/main/java/com/info/sn/dialog/ActivationDialog.java b/app/src/main/java/com/uiui/sn/dialog/ActivationDialog.java similarity index 98% rename from app/src/main/java/com/info/sn/dialog/ActivationDialog.java rename to app/src/main/java/com/uiui/sn/dialog/ActivationDialog.java index 07fc72c..b1c4631 100644 --- a/app/src/main/java/com/info/sn/dialog/ActivationDialog.java +++ b/app/src/main/java/com/uiui/sn/dialog/ActivationDialog.java @@ -1,7 +1,6 @@ -package com.info.sn.dialog; +package com.uiui.sn.dialog; -import android.app.Dialog; import android.content.Context; import android.os.Bundle; import android.text.TextUtils; @@ -12,7 +11,7 @@ import android.widget.TextView; import androidx.appcompat.app.AlertDialog; -import com.info.sn.R; +import com.uiui.sn.R; /** diff --git a/app/src/main/java/com/info/sn/dialog/CustomDialog.java b/app/src/main/java/com/uiui/sn/dialog/CustomDialog.java similarity index 98% rename from app/src/main/java/com/info/sn/dialog/CustomDialog.java rename to app/src/main/java/com/uiui/sn/dialog/CustomDialog.java index 05ed70c..065e07a 100644 --- a/app/src/main/java/com/info/sn/dialog/CustomDialog.java +++ b/app/src/main/java/com/uiui/sn/dialog/CustomDialog.java @@ -1,4 +1,4 @@ -package com.info.sn.dialog; +package com.uiui.sn.dialog; import android.content.Context; @@ -12,8 +12,8 @@ import android.widget.TextView; import androidx.appcompat.app.AlertDialog; -import com.info.sn.R; -import com.info.sn.activity.main.MainActivity; +import com.uiui.sn.R; +import com.uiui.sn.activity.main.MainActivity; /** diff --git a/app/src/main/java/com/info/sn/dialog/InfoDialog.java b/app/src/main/java/com/uiui/sn/dialog/InfoDialog.java similarity index 98% rename from app/src/main/java/com/info/sn/dialog/InfoDialog.java rename to app/src/main/java/com/uiui/sn/dialog/InfoDialog.java index 78e0472..7d785a4 100644 --- a/app/src/main/java/com/info/sn/dialog/InfoDialog.java +++ b/app/src/main/java/com/uiui/sn/dialog/InfoDialog.java @@ -1,4 +1,4 @@ -package com.info.sn.dialog; +package com.uiui.sn.dialog; import android.app.Dialog; import android.content.Context; @@ -12,7 +12,7 @@ import android.widget.TextView; import androidx.annotation.NonNull; -import com.info.sn.R; +import com.uiui.sn.R; public class InfoDialog extends Dialog { diff --git a/app/src/main/java/com/info/sn/dialog/UserDebugDialog.java b/app/src/main/java/com/uiui/sn/dialog/UserDebugDialog.java similarity index 97% rename from app/src/main/java/com/info/sn/dialog/UserDebugDialog.java rename to app/src/main/java/com/uiui/sn/dialog/UserDebugDialog.java index 8f5b942..999c1d6 100644 --- a/app/src/main/java/com/info/sn/dialog/UserDebugDialog.java +++ b/app/src/main/java/com/uiui/sn/dialog/UserDebugDialog.java @@ -1,21 +1,17 @@ -package com.info.sn.dialog; +package com.uiui.sn.dialog; import android.app.AlertDialog; -import android.app.Dialog; import android.content.Context; -import android.content.Intent; import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.EditText; -import android.widget.ImageView; import android.widget.TextView; -import com.info.sn.R; -import com.info.sn.activity.main.MainActivity; +import com.uiui.sn.R; /** diff --git a/app/src/main/java/com/info/sn/fragment/AppletQRCodeFragment.java b/app/src/main/java/com/uiui/sn/fragment/AppletQRCodeFragment.java similarity index 88% rename from app/src/main/java/com/info/sn/fragment/AppletQRCodeFragment.java rename to app/src/main/java/com/uiui/sn/fragment/AppletQRCodeFragment.java index 92cfdf5..63dea19 100644 --- a/app/src/main/java/com/info/sn/fragment/AppletQRCodeFragment.java +++ b/app/src/main/java/com/uiui/sn/fragment/AppletQRCodeFragment.java @@ -1,8 +1,7 @@ -package com.info.sn.fragment; +package com.uiui.sn.fragment; import android.os.Bundle; -import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; import android.text.TextUtils; @@ -15,20 +14,12 @@ import android.widget.ImageView; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.bumptech.glide.Glide; -import com.info.sn.R; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.manager.NetInterfaceManager; -import com.trello.rxlifecycle2.LifecycleProvider; -import com.trello.rxlifecycle2.LifecycleTransformer; -import com.trello.rxlifecycle2.RxLifecycle; -import com.trello.rxlifecycle2.android.ActivityEvent; -import com.trello.rxlifecycle2.android.FragmentEvent; -import com.trello.rxlifecycle2.android.RxLifecycleAndroid; +import com.uiui.sn.R; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.manager.NetInterfaceManager; -import io.reactivex.Observable; import io.reactivex.Observer; import io.reactivex.disposables.Disposable; -import io.reactivex.subjects.BehaviorSubject; /** diff --git a/app/src/main/java/com/info/sn/fragment/BaseFragmentPagerAdapter.java b/app/src/main/java/com/uiui/sn/fragment/BaseFragmentPagerAdapter.java similarity index 99% rename from app/src/main/java/com/info/sn/fragment/BaseFragmentPagerAdapter.java rename to app/src/main/java/com/uiui/sn/fragment/BaseFragmentPagerAdapter.java index 2842c06..41fbb55 100644 --- a/app/src/main/java/com/info/sn/fragment/BaseFragmentPagerAdapter.java +++ b/app/src/main/java/com/uiui/sn/fragment/BaseFragmentPagerAdapter.java @@ -1,4 +1,4 @@ -package com.info.sn.fragment; +package com.uiui.sn.fragment; import android.util.SparseArray; diff --git a/app/src/main/java/com/info/sn/fragment/QRCodeFragment.java b/app/src/main/java/com/uiui/sn/fragment/QRCodeFragment.java similarity index 93% rename from app/src/main/java/com/info/sn/fragment/QRCodeFragment.java rename to app/src/main/java/com/uiui/sn/fragment/QRCodeFragment.java index 67f3138..820a91c 100644 --- a/app/src/main/java/com/info/sn/fragment/QRCodeFragment.java +++ b/app/src/main/java/com/uiui/sn/fragment/QRCodeFragment.java @@ -1,4 +1,4 @@ -package com.info.sn.fragment; +package com.uiui.sn.fragment; import android.graphics.Bitmap; import android.os.Bundle; @@ -11,12 +11,10 @@ import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; -import com.info.sn.R; -import com.info.sn.config.Configs; -import com.info.sn.utils.CXAESUtil; -import com.info.sn.utils.Utils; - -import butterknife.BindView; +import com.uiui.sn.R; +import com.uiui.sn.config.Configs; +import com.uiui.sn.utils.CXAESUtil; +import com.uiui.sn.utils.Utils; /** * A simple {@link Fragment} subclass. diff --git a/app/src/main/java/com/info/sn/jpush/ExampleApplication.java b/app/src/main/java/com/uiui/sn/jpush/ExampleApplication.java similarity index 87% rename from app/src/main/java/com/info/sn/jpush/ExampleApplication.java rename to app/src/main/java/com/uiui/sn/jpush/ExampleApplication.java index 2bbd7fb..512f4f9 100644 --- a/app/src/main/java/com/info/sn/jpush/ExampleApplication.java +++ b/app/src/main/java/com/uiui/sn/jpush/ExampleApplication.java @@ -1,9 +1,8 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.app.Application; -import com.info.sn.BuildConfig; -import com.info.sn.utils.Utils; +import com.uiui.sn.BuildConfig; import cn.jpush.android.api.JPushInterface; diff --git a/app/src/main/java/com/info/sn/jpush/ExampleUtil.java b/app/src/main/java/com/uiui/sn/jpush/ExampleUtil.java similarity index 98% rename from app/src/main/java/com/info/sn/jpush/ExampleUtil.java rename to app/src/main/java/com/uiui/sn/jpush/ExampleUtil.java index a89100a..1f227d8 100644 --- a/app/src/main/java/com/info/sn/jpush/ExampleUtil.java +++ b/app/src/main/java/com/uiui/sn/jpush/ExampleUtil.java @@ -1,4 +1,4 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.content.Context; import android.content.pm.ApplicationInfo; @@ -8,10 +8,8 @@ import android.content.pm.PackageManager.NameNotFoundException; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Bundle; -import android.os.Looper; import android.telephony.TelephonyManager; import android.text.TextUtils; -import android.widget.Toast; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/app/src/main/java/com/info/sn/jpush/LocalBroadcastManager.java b/app/src/main/java/com/uiui/sn/jpush/LocalBroadcastManager.java similarity index 99% rename from app/src/main/java/com/info/sn/jpush/LocalBroadcastManager.java rename to app/src/main/java/com/uiui/sn/jpush/LocalBroadcastManager.java index 20c7942..ee54886 100644 --- a/app/src/main/java/com/info/sn/jpush/LocalBroadcastManager.java +++ b/app/src/main/java/com/uiui/sn/jpush/LocalBroadcastManager.java @@ -1,4 +1,4 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.content.BroadcastReceiver; import android.content.Context; diff --git a/app/src/main/java/com/info/sn/jpush/Logger.java b/app/src/main/java/com/uiui/sn/jpush/Logger.java similarity index 96% rename from app/src/main/java/com/info/sn/jpush/Logger.java rename to app/src/main/java/com/uiui/sn/jpush/Logger.java index e747ddc..b322655 100644 --- a/app/src/main/java/com/info/sn/jpush/Logger.java +++ b/app/src/main/java/com/uiui/sn/jpush/Logger.java @@ -1,4 +1,4 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.util.Log; diff --git a/app/src/main/java/com/info/sn/jpush/MyJPushMessageReceiver.java b/app/src/main/java/com/uiui/sn/jpush/MyJPushMessageReceiver.java similarity index 96% rename from app/src/main/java/com/info/sn/jpush/MyJPushMessageReceiver.java rename to app/src/main/java/com/uiui/sn/jpush/MyJPushMessageReceiver.java index a842d23..c8544fa 100644 --- a/app/src/main/java/com/info/sn/jpush/MyJPushMessageReceiver.java +++ b/app/src/main/java/com/uiui/sn/jpush/MyJPushMessageReceiver.java @@ -1,8 +1,8 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.content.Context; -import com.info.sn.base.BaseApplication; +import com.uiui.sn.base.BaseApplication; import cn.jpush.android.api.CustomMessage; import cn.jpush.android.api.JPushMessage; diff --git a/app/src/main/java/com/info/sn/jpush/PushService.java b/app/src/main/java/com/uiui/sn/jpush/PushService.java similarity index 79% rename from app/src/main/java/com/info/sn/jpush/PushService.java rename to app/src/main/java/com/uiui/sn/jpush/PushService.java index b3d0d29..ddeaf20 100644 --- a/app/src/main/java/com/info/sn/jpush/PushService.java +++ b/app/src/main/java/com/uiui/sn/jpush/PushService.java @@ -1,4 +1,4 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import cn.jpush.android.service.JCommonService; diff --git a/app/src/main/java/com/info/sn/jpush/TagAliasOperatorHelper.java b/app/src/main/java/com/uiui/sn/jpush/TagAliasOperatorHelper.java similarity index 99% rename from app/src/main/java/com/info/sn/jpush/TagAliasOperatorHelper.java rename to app/src/main/java/com/uiui/sn/jpush/TagAliasOperatorHelper.java index c5f5509..f5ebe20 100644 --- a/app/src/main/java/com/info/sn/jpush/TagAliasOperatorHelper.java +++ b/app/src/main/java/com/uiui/sn/jpush/TagAliasOperatorHelper.java @@ -1,4 +1,4 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.content.Context; import android.os.Handler; @@ -6,7 +6,7 @@ import android.os.Message; import android.util.Log; import android.util.SparseArray; -import com.info.sn.utils.ToastUtil; +import com.uiui.sn.utils.ToastUtil; import java.util.Locale; import java.util.Set; diff --git a/app/src/main/java/com/info/sn/jpush/TestActivity.java b/app/src/main/java/com/uiui/sn/jpush/TestActivity.java similarity index 97% rename from app/src/main/java/com/info/sn/jpush/TestActivity.java rename to app/src/main/java/com/uiui/sn/jpush/TestActivity.java index 3908ac3..324412c 100644 --- a/app/src/main/java/com/info/sn/jpush/TestActivity.java +++ b/app/src/main/java/com/uiui/sn/jpush/TestActivity.java @@ -1,4 +1,4 @@ -package com.info.sn.jpush; +package com.uiui.sn.jpush; import android.app.Activity; import android.content.Intent; diff --git a/app/src/main/java/com/info/sn/manager/AmapManager.java b/app/src/main/java/com/uiui/sn/manager/AmapManager.java similarity index 98% rename from app/src/main/java/com/info/sn/manager/AmapManager.java rename to app/src/main/java/com/uiui/sn/manager/AmapManager.java index c20c161..1a42503 100644 --- a/app/src/main/java/com/info/sn/manager/AmapManager.java +++ b/app/src/main/java/com/uiui/sn/manager/AmapManager.java @@ -1,4 +1,4 @@ -package com.info.sn.manager; +package com.uiui.sn.manager; import android.content.Context; import android.util.Log; @@ -7,7 +7,7 @@ import com.amap.api.location.AMapLocation; import com.amap.api.location.AMapLocationClient; import com.amap.api.location.AMapLocationClientOption; import com.amap.api.location.AMapLocationListener; -import com.info.sn.utils.SPUtils; +import com.uiui.sn.utils.SPUtils; public class AmapManager { private static AmapManager sInstance; diff --git a/app/src/main/java/com/info/sn/manager/ControlManager.java b/app/src/main/java/com/uiui/sn/manager/ControlManager.java similarity index 96% rename from app/src/main/java/com/info/sn/manager/ControlManager.java rename to app/src/main/java/com/uiui/sn/manager/ControlManager.java index 55fb826..9bc2771 100644 --- a/app/src/main/java/com/info/sn/manager/ControlManager.java +++ b/app/src/main/java/com/uiui/sn/manager/ControlManager.java @@ -1,4 +1,4 @@ -package com.info.sn.manager; +package com.uiui.sn.manager; import android.annotation.SuppressLint; import android.bluetooth.BluetoothAdapter; @@ -11,11 +11,11 @@ import android.util.Log; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; -import com.info.sn.bean.zuoye.SystemSettings; -import com.info.sn.utils.ApkUtils; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ToastUtil; +import com.uiui.sn.bean.zuoye.SystemSettings; +import com.uiui.sn.utils.ApkUtils; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ToastUtil; import java.util.Arrays; import java.util.HashSet; @@ -402,16 +402,20 @@ public class ControlManager { mContext.sendBroadcast(tfmediaIntent); if (setting_tfmedia == 1) { String qch_tfmedia_filetypes = settings.getSetting_tfmedia_format(); - HashSet types = new HashSet<>(Arrays.asList(qch_tfmedia_filetypes.split(","))); - types.removeIf(new Predicate() { - @Override - public boolean test(String s) { - return TextUtils.isEmpty(s); - } - }); - String typesString = String.join(",", types); - JGYUtils.putString(mContext.getContentResolver(), "qch_tfmedia_filetypes", typesString);//影音管控 - Log.e("SystemSetting", "qch_tfmedia_filetypes :" + typesString); + if (TextUtils.isEmpty(qch_tfmedia_filetypes)) { + JGYUtils.putString(mContext.getContentResolver(), "qch_tfmedia_filetypes", "");//影音管控 + } else { + HashSet types = new HashSet<>(Arrays.asList(qch_tfmedia_filetypes.split(","))); + types.removeIf(new Predicate() { + @Override + public boolean test(String s) { + return TextUtils.isEmpty(s); + } + }); + String typesString = String.join(",", types); + JGYUtils.putString(mContext.getContentResolver(), "qch_tfmedia_filetypes", typesString);//影音管控 + Log.e("SystemSetting", "qch_tfmedia_filetypes :" + typesString); + } } else { JGYUtils.putInt(mContext.getContentResolver(), "qch_tfmedia_forbid", 0); } diff --git a/app/src/main/java/com/info/sn/manager/DeviceManager.java b/app/src/main/java/com/uiui/sn/manager/DeviceManager.java similarity index 94% rename from app/src/main/java/com/info/sn/manager/DeviceManager.java rename to app/src/main/java/com/uiui/sn/manager/DeviceManager.java index d7518cc..9c32506 100644 --- a/app/src/main/java/com/info/sn/manager/DeviceManager.java +++ b/app/src/main/java/com/uiui/sn/manager/DeviceManager.java @@ -1,13 +1,13 @@ -package com.info.sn.manager; +package com.uiui.sn.manager; import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.os.Build; -import com.info.sn.BuildConfig; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ToastUtil; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ToastUtil; public class DeviceManager { private static final String TAG = DeviceManager.class.getSimpleName(); diff --git a/app/src/main/java/com/info/sn/manager/MyGlideModule.java b/app/src/main/java/com/uiui/sn/manager/MyGlideModule.java similarity index 95% rename from app/src/main/java/com/info/sn/manager/MyGlideModule.java rename to app/src/main/java/com/uiui/sn/manager/MyGlideModule.java index 6cf43a3..359c702 100644 --- a/app/src/main/java/com/info/sn/manager/MyGlideModule.java +++ b/app/src/main/java/com/uiui/sn/manager/MyGlideModule.java @@ -1,11 +1,11 @@ -package com.info.sn.manager; +package com.uiui.sn.manager; import android.content.Context; import com.bumptech.glide.GlideBuilder; import com.bumptech.glide.load.engine.cache.DiskLruCacheFactory; import com.bumptech.glide.module.AppGlideModule; -import com.info.sn.utils.StorageUtils; +import com.uiui.sn.utils.StorageUtils; /** * Created by Administrator on 2017/2/9. diff --git a/app/src/main/java/com/info/sn/manager/NetInterfaceManager.java b/app/src/main/java/com/uiui/sn/manager/NetInterfaceManager.java similarity index 80% rename from app/src/main/java/com/info/sn/manager/NetInterfaceManager.java rename to app/src/main/java/com/uiui/sn/manager/NetInterfaceManager.java index 474e1ea..8763766 100644 --- a/app/src/main/java/com/info/sn/manager/NetInterfaceManager.java +++ b/app/src/main/java/com/uiui/sn/manager/NetInterfaceManager.java @@ -1,51 +1,45 @@ -package com.info.sn.manager; +package com.uiui.sn.manager; import android.annotation.SuppressLint; import android.content.Context; import android.util.Log; -import com.info.sn.bean.zuoye.AppInfo; -import com.info.sn.bean.zuoye.AppStart; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.Label; -import com.info.sn.bean.zuoye.UserAvatarInfo; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.bean.zuoye.browser.BrowserApiData; -import com.info.sn.network.UrlAddress; -import com.info.sn.network.api.APPJump; -import com.info.sn.network.api.AddAppInstall; -import com.info.sn.network.api.AppUsedApi; -import com.info.sn.network.api.BindDevices; -import com.info.sn.network.api.Browser; -import com.info.sn.network.api.BrowserLabel; -import com.info.sn.network.api.ForceInstall; -import com.info.sn.network.api.GetBatchApi; -import com.info.sn.network.api.GetGuideApi; -import com.info.sn.network.api.GetSnUidApi; -import com.info.sn.network.api.NewestAppUpdate; -import com.info.sn.network.api.QRCodeApi; -import com.info.sn.network.api.QueryAllApp; -import com.info.sn.network.api.QueryAppInside; -import com.info.sn.network.api.QuerySnAppStart; -import com.info.sn.network.api.RunningApp; -import com.info.sn.network.api.SNInfoApi; -import com.info.sn.network.api.SaveSnUidApi; -import com.info.sn.network.api.ScreenLock; -import com.info.sn.network.api.ScreenState; -import com.info.sn.network.api.Setting; -import com.info.sn.network.api.TimeControl; -import com.info.sn.network.api.UpdateAdminSn; -import com.info.sn.network.api.UploadScreenshot; -import com.info.sn.network.api.UserInfoControl; -import com.info.sn.network.api.gankao.ActiveUserApi; -import com.info.sn.network.api.gankao.CancelUserPowerApi; -import com.info.sn.network.api.gankao.CreateUserApi; -import com.info.sn.network.api.gankao.QueryPowerUserListApi; -import com.info.sn.network.api.gankao.QueryProductApi; -import com.info.sn.network.api.gankao.UpgradeUserPowerApi; -import com.info.sn.network.api.gankao.UserProductsApi; -import com.info.sn.utils.MD5Util; -import com.info.sn.utils.Utils; +import com.uiui.sn.bean.zuoye.AppInfo; +import com.uiui.sn.bean.zuoye.AppStart; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.Label; +import com.uiui.sn.bean.zuoye.UserAvatarInfo; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.bean.zuoye.browser.BrowserApiData; +import com.uiui.sn.network.UrlAddress; +import com.uiui.sn.network.api.APPJump; +import com.uiui.sn.network.api.AddAppInstall; +import com.uiui.sn.network.api.AppUsedApi; +import com.uiui.sn.network.api.BindDevices; +import com.uiui.sn.network.api.Browser; +import com.uiui.sn.network.api.BrowserLabel; +import com.uiui.sn.network.api.ForceInstall; +import com.uiui.sn.network.api.GetBatchApi; +import com.uiui.sn.network.api.GetControlScreenshotApi; +import com.uiui.sn.network.api.GetGuideApi; +import com.uiui.sn.network.api.GetSnUidApi; +import com.uiui.sn.network.api.NewestAppUpdate; +import com.uiui.sn.network.api.QRCodeApi; +import com.uiui.sn.network.api.QueryAllApp; +import com.uiui.sn.network.api.QueryAppInside; +import com.uiui.sn.network.api.QuerySnAppStart; +import com.uiui.sn.network.api.RunningApp; +import com.uiui.sn.network.api.SNInfoApi; +import com.uiui.sn.network.api.SaveSnUidApi; +import com.uiui.sn.network.api.ScreenLock; +import com.uiui.sn.network.api.ScreenState; +import com.uiui.sn.network.api.Setting; +import com.uiui.sn.network.api.TimeControl; +import com.uiui.sn.network.api.UpdateAdminSn; +import com.uiui.sn.network.api.UploadScreenshot; +import com.uiui.sn.network.api.UserInfoControl; +import com.uiui.sn.utils.MD5Util; +import com.uiui.sn.utils.Utils; import org.jetbrains.annotations.NotNull; @@ -74,7 +68,7 @@ public class NetInterfaceManager { private Context mContext; private Retrofit mRetrofit; private OkHttpClient okHttpClient; - private Retrofit mGankaoRetrofit; +// private Retrofit mGankaoRetrofit; private final ConcurrentHashMap requestIdsMap = new ConcurrentHashMap<>(); //超时时间 @@ -184,14 +178,14 @@ public class NetInterfaceManager { .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) .build(); } - if (null == mGankaoRetrofit) { - mGankaoRetrofit = new Retrofit.Builder() - .client(okHttpClient) - .baseUrl(UrlAddress.GANKAN_ROOT_URL) - .addConverterFactory(GsonConverterFactory.create()) - .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) - .build(); - } +// if (null == mGankaoRetrofit) { +// mGankaoRetrofit = new Retrofit.Builder() +// .client(okHttpClient) +// .baseUrl(UrlAddress.GANKAN_ROOT_URL) +// .addConverterFactory(GsonConverterFactory.create()) +// .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) +// .build(); +// } } public static void init(Context context) { @@ -356,33 +350,37 @@ public class NetInterfaceManager { return mRetrofit.create(AppUsedApi.class); } - //赶考 - - public CreateUserApi getCreateUserControl() { - return mGankaoRetrofit.create(CreateUserApi.class); + public GetControlScreenshotApi getControlScreenshotApi() { + return mRetrofit.create(GetControlScreenshotApi.class); } - public ActiveUserApi getActiveUserControl() { - return mGankaoRetrofit.create(ActiveUserApi.class); - } - - public QueryProductApi getQueryProductControl() { - return mGankaoRetrofit.create(QueryProductApi.class); - } - - public QueryPowerUserListApi getQueryPowerUserListControl() { - return mGankaoRetrofit.create(QueryPowerUserListApi.class); - } - - public UserProductsApi getUserProductsControl() { - return mGankaoRetrofit.create(UserProductsApi.class); - } - - public CancelUserPowerApi getCancelUserPowerControl() { - return mGankaoRetrofit.create(CancelUserPowerApi.class); - } - - public UpgradeUserPowerApi getUpgradeUserPowerControl() { - return mGankaoRetrofit.create(UpgradeUserPowerApi.class); - } +// //赶考 +// +// public CreateUserApi getCreateUserControl() { +// return mGankaoRetrofit.create(CreateUserApi.class); +// } +// +// public ActiveUserApi getActiveUserControl() { +// return mGankaoRetrofit.create(ActiveUserApi.class); +// } +// +// public QueryProductApi getQueryProductControl() { +// return mGankaoRetrofit.create(QueryProductApi.class); +// } +// +// public QueryPowerUserListApi getQueryPowerUserListControl() { +// return mGankaoRetrofit.create(QueryPowerUserListApi.class); +// } +// +// public UserProductsApi getUserProductsControl() { +// return mGankaoRetrofit.create(UserProductsApi.class); +// } +// +// public CancelUserPowerApi getCancelUserPowerControl() { +// return mGankaoRetrofit.create(CancelUserPowerApi.class); +// } +// +// public UpgradeUserPowerApi getUpgradeUserPowerControl() { +// return mGankaoRetrofit.create(UpgradeUserPowerApi.class); +// } } diff --git a/app/src/main/java/com/info/sn/mvp/BasePresenter.java b/app/src/main/java/com/uiui/sn/mvp/BasePresenter.java similarity index 81% rename from app/src/main/java/com/info/sn/mvp/BasePresenter.java rename to app/src/main/java/com/uiui/sn/mvp/BasePresenter.java index 965b06a..b9cbddf 100644 --- a/app/src/main/java/com/info/sn/mvp/BasePresenter.java +++ b/app/src/main/java/com/uiui/sn/mvp/BasePresenter.java @@ -1,4 +1,4 @@ -package com.info.sn.mvp; +package com.uiui.sn.mvp; public interface BasePresenter { void attachView(V view); diff --git a/app/src/main/java/com/info/sn/mvp/BaseView.java b/app/src/main/java/com/uiui/sn/mvp/BaseView.java similarity index 55% rename from app/src/main/java/com/info/sn/mvp/BaseView.java rename to app/src/main/java/com/uiui/sn/mvp/BaseView.java index cae9fc5..67ce675 100644 --- a/app/src/main/java/com/info/sn/mvp/BaseView.java +++ b/app/src/main/java/com/uiui/sn/mvp/BaseView.java @@ -1,4 +1,4 @@ -package com.info.sn.mvp; +package com.uiui.sn.mvp; public interface BaseView { } diff --git a/app/src/main/java/com/info/sn/network/HTTPInterface.java b/app/src/main/java/com/uiui/sn/network/HTTPInterface.java similarity index 84% rename from app/src/main/java/com/info/sn/network/HTTPInterface.java rename to app/src/main/java/com/uiui/sn/network/HTTPInterface.java index ecb26e0..10c9c15 100644 --- a/app/src/main/java/com/info/sn/network/HTTPInterface.java +++ b/app/src/main/java/com/uiui/sn/network/HTTPInterface.java @@ -1,4 +1,4 @@ -package com.info.sn.network; +package com.uiui.sn.network; import android.annotation.SuppressLint; import android.content.Context; @@ -6,6 +6,8 @@ import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; import android.os.Build; import android.provider.Settings; import android.text.TextUtils; @@ -14,43 +16,53 @@ import android.util.Log; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.blankj.utilcode.util.ImageUtils; import com.google.gson.Gson; import com.google.gson.JsonObject; import com.google.gson.JsonParser; -import com.info.sn.BuildConfig; -import com.info.sn.Statistics.AppInformation; -import com.info.sn.Statistics.StatisticsInfo; -import com.info.sn.bean.zuoye.AppInfo; -import com.info.sn.bean.zuoye.AppStart; -import com.info.sn.bean.zuoye.AppUploadInfo; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.Label; -import com.info.sn.bean.zuoye.browser.BrowserApiData; -import com.info.sn.bean.zuoye.browser.BrowserBean; -import com.info.sn.jpush.TagAliasOperatorHelper; -import com.info.sn.manager.ControlManager; -import com.info.sn.manager.NetInterfaceManager; -import com.info.sn.network.api.NewestAppUpdate; -import com.info.sn.network.api.UpdateAdminSn; -import com.info.sn.service.ManagerService; -import com.info.sn.utils.ApkUtils; -import com.info.sn.utils.FileUtils; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.TimeUtils; -import com.info.sn.utils.URLUtils; -import com.info.sn.utils.Utils; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.Statistics.AppInformation; +import com.uiui.sn.Statistics.StatisticsInfo; +import com.uiui.sn.bean.zuoye.AppInfo; +import com.uiui.sn.bean.zuoye.AppStart; +import com.uiui.sn.bean.zuoye.AppUploadInfo; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.Label; +import com.uiui.sn.bean.zuoye.browser.BrowserApiData; +import com.uiui.sn.bean.zuoye.browser.BrowserBean; +import com.uiui.sn.jpush.TagAliasOperatorHelper; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.network.api.GetControlScreenshotApi; +import com.uiui.sn.network.api.NewestAppUpdate; +import com.uiui.sn.network.api.UpdateAdminSn; +import com.uiui.sn.network.api.UploadScreenshot; +import com.uiui.sn.service.ManagerService; +import com.uiui.sn.utils.ApkUtils; +import com.uiui.sn.utils.CmdUtil; +import com.uiui.sn.utils.FileUtils; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.TimeUtils; +import com.uiui.sn.utils.URLUtils; +import com.uiui.sn.utils.Utils; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.function.Function; import java.util.stream.Collectors; import cn.jpush.android.api.JPushInterface; import io.reactivex.Observable; +import io.reactivex.ObservableEmitter; import io.reactivex.ObservableOnSubscribe; import io.reactivex.ObservableSource; import io.reactivex.Observer; @@ -58,10 +70,14 @@ import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.annotations.NonNull; import io.reactivex.disposables.Disposable; import io.reactivex.functions.BiFunction; -import io.reactivex.functions.Consumer; +import io.reactivex.functions.Function; import io.reactivex.schedulers.Schedulers; +import kotlin.io.OnErrorAction; +import okhttp3.MediaType; +import okhttp3.MultipartBody; +import okhttp3.RequestBody; -import static com.info.sn.jpush.TagAliasOperatorHelper.ACTION_SET; +import static com.uiui.sn.jpush.TagAliasOperatorHelper.ACTION_SET; public class HTTPInterface { private static String TAG = HTTPInterface.class.getSimpleName(); @@ -325,7 +341,8 @@ public class HTTPInterface { public static void getAppStart(final Context context, List appInfoList) { - NetInterfaceManager.getInstance().getAppStartControl() + NetInterfaceManager.getInstance() + .getAppStartControl() .subscribe(new Observer>>() { @Override public void onSubscribe(@NonNull Disposable d) { @@ -532,6 +549,8 @@ public class HTTPInterface { } } + private static int hide = 1; + //隐藏显示app @SuppressLint("NewApi") private static void setAppHide(Context context, List list) { @@ -542,7 +561,7 @@ public class HTTPInterface { String app_package = app.getApp_package(); int is_lock = app.getIs_lock(); try { - if (is_lock == 1) { + if (is_lock == hide) { pm.setApplicationEnabledSetting(app_package, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, 0); hideAPPList.add(app_package); } else { @@ -649,25 +668,26 @@ public class HTTPInterface { jsonObject.put("address", address); jsonObject.put("longitude", longitude); jsonObject.put("latitude", latitude); - String a = jsonObject.toString(); - String machine = Utils.getMachine(context); - String hardware = Utils.getHardware(context); - Log.e(TAG, "updateAdminInfo: getHardware = " + hardware); JSONObject softwareJson = new JSONObject(); - softwareJson.put("appstore_version", ApkUtils.getAPPVersionName(context, "com.jgyapp.market")); + softwareJson.put("appstore_version", ApkUtils.getAPPVersionName(context, "com.uiui.appstore")); softwareJson.put("updatetools_version", ApkUtils.getAPPVersionName(context, "com.uiuios.updatetools")); - softwareJson.put("info_version", ApkUtils.getAPPVersionName(context, "com.info.sn")); + softwareJson.put("info_version", ApkUtils.getAPPVersionName(context, "com.uiui.sn")); softwareJson.put("jiaoguanyi_version", ApkUtils.getAPPVersionName(context, "com.jiaoguanyi.os")); softwareJson.put("gankao_version", ApkUtils.getAPPVersionName(context, "com.gankao.gkwxhd")); softwareJson.put("learning_version", ApkUtils.getAPPVersionName(context, "com.info.learning")); softwareJson.put("chat_version", ApkUtils.getAPPVersionName(context, "com.info.chat")); softwareJson.put("jpush_id", JPushInterface.getRegistrationID(context)); + String addr = jsonObject.toString(); + String machine = Utils.getMachine(context); + String hardware = Utils.getHardware(context); + Log.e(TAG, "updateAdminInfo: getHardware = " + hardware); + String software = softwareJson.toJSONString(); UpdateAdminSn updateAdminSn = NetInterfaceManager.getInstance().getUpdateAdminSnControl(); updateAdminSn.sendAdminSn(Utils.getSerial(), - jsonObject.toJSONString(), + addr, machine, hardware, - softwareJson.toJSONString() + software ).subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Observer() { @@ -986,7 +1006,6 @@ public class HTTPInterface { @Override public void onNext(BaseResponse response) { - Log.e("sendAppUsed", "onNext: "); Log.e("sendAppUsed", "onNext: " + JSONObject.toJSONString(response)); } @@ -1078,6 +1097,189 @@ public class HTTPInterface { }); } + private static Observable getScreenshot(Context context, String filePath) { + Observable screenshotObservable = Observable.create(new ObservableOnSubscribe() { + @Override + public void subscribe(ObservableEmitter e) { + int code = CmdUtil.execute("screencap -p " + filePath).code; + e.onNext(code); + e.onComplete(); + } + }).subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()); + return screenshotObservable; + } + + private static Observable getSendFile(String path, MultipartBody.Part body) { + return NetInterfaceManager.getInstance() + .getControlScreenshotApi() + .getControlScreenshot(Utils.getSerial(), body) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()); + } + + public static void screenshot(Context context) { + String path = context.getExternalFilesDir("db").getAbsolutePath(); + String filePath = path + File.separator + Utils.getSerial() + ".png"; + getScreenshot(context, filePath).concatMap(new Function>() { + @Override + public ObservableSource apply(Integer integer) throws Exception { + if (integer != 0) { + throw new FileNotFoundException(); + } + File file = new File(filePath); + if (!file.exists()) { + throw new FileNotFoundException(filePath); + } + Bitmap bitmap = BitmapFactory.decodeFile(filePath); + if (bitmap.getWidth() < bitmap.getHeight()) { + bitmap = ImageUtils.rotate(bitmap, -90, bitmap.getWidth(), bitmap.getHeight()); + } + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); + file.createNewFile(); + FileOutputStream fos = new FileOutputStream(file); + InputStream is = new ByteArrayInputStream(baos.toByteArray()); + int x; + byte[] b = new byte[1024 * 100]; + while ((x = is.read(b)) != -1) { + fos.write(b, 0, x); + } + fos.close(); + RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file); + MultipartBody.Part body = MultipartBody.Part.createFormData("file", file.getName(), requestFile); + return getSendFile(filePath, body); + } + }).subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + Log.e("screenshot", "onSubscribe: "); + } + + @Override + public void onNext(BaseResponse baseResponse) { + Log.e("screenshot", "onNext: " + baseResponse); + } + + @Override + public void onError(Throwable e) { + Log.e("screenshot", "onError: " + e.getMessage()); + onComplete(); + } + + @Override + public void onComplete() { + Log.e("screenshot", "onComplete: "); + } + }); + } + + + public static void doscreenshot(final Context context) { + String path = context.getExternalFilesDir("db").getAbsolutePath(); + String filePath = path + File.separator + Utils.getSerial() + ".png"; + Observable.create(new ObservableOnSubscribe() { + @Override + public void subscribe(ObservableEmitter e) throws Exception { + int n = CmdUtil.execute("screencap -p " + filePath).code; + e.onNext(n); + } + }).subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + + } + + @Override + public void onNext(Integer integer) { + if (integer == 0) { + uplaodImage(context, filePath); + } else { + Log.e("doss", "失败"); + } + } + + @Override + public void onError(Throwable e) { + Log.e("doss", "Throwable=" + e.getMessage()); + } + + @Override + public void onComplete() { + + } + }); + } + + private static void uplaodImage(final Context context, String filePath) { + File file = new File(filePath); + if (!file.exists()) { + Log.e("uplaodImage", "File does not exists"); + return; + } + + Bitmap bitmap = BitmapFactory.decodeFile(filePath); + if (bitmap.getWidth() < bitmap.getHeight()) { + bitmap = ImageUtils.rotate(bitmap, -90, bitmap.getWidth(), bitmap.getHeight()); + } + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); + + try { + file.createNewFile(); + FileOutputStream fos = new FileOutputStream(file); + InputStream is = new ByteArrayInputStream(baos.toByteArray()); + int x = 0; + byte[] b = new byte[1024 * 100]; + while ((x = is.read(b)) != -1) { + fos.write(b, 0, x); + } + fos.close(); + } catch (Exception e) { + e.printStackTrace(); + } + + + RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file); + MultipartBody.Part body = MultipartBody.Part.createFormData("file", file.getName(), requestFile); + NetInterfaceManager.getInstance() + .getControlScreenshotApi() + .getControlScreenshot(Utils.getSerial(), body) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + Log.e("uplaod", "onSubscribe: "); + } + + @Override + public void onNext(BaseResponse baseResponse) { + int code = baseResponse.code; + if (code == 200) { + Log.e("uplaod", "onNext: " + baseResponse.msg); + } else { + Log.e("uplaod", code + ": " + baseResponse.msg); + } + } + + @Override + public void onError(Throwable e) { + Log.e("uplaod", "onError: " + e.getMessage()); + onComplete(); + } + + @Override + public void onComplete() { + Log.e("uplaod", "onComplete: "); + } + }); + } + private static List factoryApp = new ArrayList() {{ this.add("com.gankao.gkwxhd"); this.add("com.jiaoguanyi.os"); diff --git a/app/src/main/java/com/uiui/sn/network/UrlAddress.java b/app/src/main/java/com/uiui/sn/network/UrlAddress.java new file mode 100644 index 0000000..e956bbd --- /dev/null +++ b/app/src/main/java/com/uiui/sn/network/UrlAddress.java @@ -0,0 +1,93 @@ +package com.uiui.sn.network; + +public class UrlAddress { + //主页接口 + public static final String ROOT_URL = "https://led.aolelearn.cn/android/"; + //获取班级ID + public static final String GET_BATCH = "sn/getBatch"; + //设备信息接口 + public static final String SNINFO = "sn/getSnInfo"; + //发送app信息 + public static final String APPLOG = "App/getApplog"; + //获取正在运行的app + public static final String RUN_NEW_APP = "app/runNewApp"; + //根据包名获取更新 + public final static String GET_APP_UPDATE = "Update/update"; + //获取当前最顶层应用和电量 + public final static String SEND_RUNINGAPPINFO = "Monitoring/getAppNow"; + //在线状态 + public final static String SEND_DRIVE_STATE = "Online/online"; + //获取所有应用 + public final static String GET_ALL_PACKAGE = "app/queryAllApp"; + //绑定设备消息 + public final static String BIND_DEVICES = "sn/bindSn"; + //获取系统设置 + public final static String GET_SETTINGS = "control/getSetting"; + //浏览器网址管控 + public final static String SET_BROWSER_URL = "control/getBrowser"; + //浏览器书签管控 + public final static String SET_BROWSER_LABEL = "control/getLabel"; + //获取强制下载 + public final static String GET_FORCE_INSTALL = "app/getForceDownload"; + //获取app管控 + public final static String GET_APP_START = "sn/querySnAppStart"; + //发app跳转管控 + public final static String GET_APP_JUMP = "sn/querySnJump"; + //发app跳转管控 + public final static String QUERY_APP_INSIDE = "control/queryAppInside"; + //发送卸载或者安装信息 + public final static String SEND_INSTALLEDORREMOVED = "app/addAppInstall"; + //发送卸载或者安装信息 + public final static String UPDATE_SNINFO = "sn/updateAdminSn"; + //根据包名获取更新 + public final static String GET_NEWESTAPPUPDATE = "app/newestAppUpdate"; + //上传屏幕截图 + public final static String UPLOAD_SCREEN_SNAPSHOT = "sn/uploadScreenshot"; + //获取屏幕管控 + public final static String GET_SCREEN_LOCK = "sn/getScreenshot"; + //获取时间管控 + public final static String GET_TIME_CONTROL = "sn/getTimeControl"; + //获取用户头像和信息 + public static final String GET_USER_AVATAR_INFO = "sn/getUserAvatarInfo"; + //上传设备赶考的UID + public static final String POST_USER_SAVESNUID = "sn/saveSnUid"; + //获取激活时间和赶考UID + public static final String GET_SN_UID = "sn/getSnUid"; + //获取app使用信息 + public static final String UPLOAD_APP_USE_INFO = "sn/uploadAppUseInfo"; + //获取小程序二维码 + public static final String GET_APPLET_QRCODE = "file/getAppletQrCode"; + //获取操作指南 + public static final String GET_OPERATION_GUIDE = "file/getFiles"; + //上传控制面版截图 + public static final String UPLOAD_CONTROL_SCREENSHOT = "sn/uploadControlScreenshot"; + //获取应用白名单 + public static final String GET_APP_AND_WHITE = "getAppAndWhite"; + + +// //赶考 +// public static final String GANKAN_ROOT_URL = "https://www.gankao.com/api/service/"; +// //创建/查询用户 +// public static final String CREATE_USER = "createUser"; +// //用户授权/激活权限 +// public static final String ACTIVE_USER = "activeUser"; +// //获得可用的权限产品规格 +// public static final String QUERY_AVAILABLE_PRODUCT_SPECIFICATIONS = "queryAvailableProductSpecifications"; +// //获取机构的接口授权记录 +// public static final String QUERY_POWER_USER_LIST = "queryPowerUserList"; +// //获取用户已获得的产品列表(权限、单体课程、套餐等) +// public static final String GET_USER_PRODUCTS = "getUserProducts"; +// //升级用户会员权限的学段 +// public static final String UPGRADE_USER_POWER = "upgradeUserPower"; +// //撤销指定的用户授权记录 +// public static final String CANCEL_USER_POWER = "cancelUserPower"; + + + /* + * 极光 + * */ + //删除alias + public static final String DELETE_JPUSH_ALIAS = "https://device.jpush.cn/v3/aliases/"; + //删除tags + public static final String DELETE_JPUSH_TAG = "https://device.jpush.cn/v3/tags/"; +} diff --git a/app/src/main/java/com/info/sn/network/api/APPJump.java b/app/src/main/java/com/uiui/sn/network/api/APPJump.java similarity index 63% rename from app/src/main/java/com/info/sn/network/api/APPJump.java rename to app/src/main/java/com/uiui/sn/network/api/APPJump.java index 5d81b40..3db5170 100644 --- a/app/src/main/java/com/info/sn/network/api/APPJump.java +++ b/app/src/main/java/com/uiui/sn/network/api/APPJump.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.AppJump; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.AppJump; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import java.util.List; diff --git a/app/src/main/java/com/info/sn/network/api/AddAppInstall.java b/app/src/main/java/com/uiui/sn/network/api/AddAppInstall.java similarity index 75% rename from app/src/main/java/com/info/sn/network/api/AddAppInstall.java rename to app/src/main/java/com/uiui/sn/network/api/AddAppInstall.java index 1f94337..0da2cc1 100644 --- a/app/src/main/java/com/info/sn/network/api/AddAppInstall.java +++ b/app/src/main/java/com/uiui/sn/network/api/AddAppInstall.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/AppUsedApi.java b/app/src/main/java/com/uiui/sn/network/api/AppUsedApi.java similarity index 75% rename from app/src/main/java/com/info/sn/network/api/AppUsedApi.java rename to app/src/main/java/com/uiui/sn/network/api/AppUsedApi.java index c2c189a..9680515 100644 --- a/app/src/main/java/com/info/sn/network/api/AppUsedApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/AppUsedApi.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/Applog.java b/app/src/main/java/com/uiui/sn/network/api/Applog.java similarity index 78% rename from app/src/main/java/com/info/sn/network/api/Applog.java rename to app/src/main/java/com/uiui/sn/network/api/Applog.java index 1e9c5c0..fadc01b 100644 --- a/app/src/main/java/com/info/sn/network/api/Applog.java +++ b/app/src/main/java/com/uiui/sn/network/api/Applog.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/BindDevices.java b/app/src/main/java/com/uiui/sn/network/api/BindDevices.java similarity index 73% rename from app/src/main/java/com/info/sn/network/api/BindDevices.java rename to app/src/main/java/com/uiui/sn/network/api/BindDevices.java index 0fc1b41..c25c4b2 100644 --- a/app/src/main/java/com/info/sn/network/api/BindDevices.java +++ b/app/src/main/java/com/uiui/sn/network/api/BindDevices.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/Browser.java b/app/src/main/java/com/uiui/sn/network/api/Browser.java similarity index 60% rename from app/src/main/java/com/info/sn/network/api/Browser.java rename to app/src/main/java/com/uiui/sn/network/api/Browser.java index 6278757..5e0a7ab 100644 --- a/app/src/main/java/com/info/sn/network/api/Browser.java +++ b/app/src/main/java/com/uiui/sn/network/api/Browser.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.browser.BrowserApiData; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.browser.BrowserApiData; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/BrowserLabel.java b/app/src/main/java/com/uiui/sn/network/api/BrowserLabel.java similarity index 62% rename from app/src/main/java/com/info/sn/network/api/BrowserLabel.java rename to app/src/main/java/com/uiui/sn/network/api/BrowserLabel.java index 188df74..286d817 100644 --- a/app/src/main/java/com/info/sn/network/api/BrowserLabel.java +++ b/app/src/main/java/com/uiui/sn/network/api/BrowserLabel.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.Label; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.Label; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/ForceInstall.java b/app/src/main/java/com/uiui/sn/network/api/ForceInstall.java similarity index 65% rename from app/src/main/java/com/info/sn/network/api/ForceInstall.java rename to app/src/main/java/com/uiui/sn/network/api/ForceInstall.java index 781a037..a83d510 100644 --- a/app/src/main/java/com/info/sn/network/api/ForceInstall.java +++ b/app/src/main/java/com/uiui/sn/network/api/ForceInstall.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.AppInfo; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.AppInfo; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import java.util.List; diff --git a/app/src/main/java/com/info/sn/network/api/GetBatchApi.java b/app/src/main/java/com/uiui/sn/network/api/GetBatchApi.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/GetBatchApi.java rename to app/src/main/java/com/uiui/sn/network/api/GetBatchApi.java index 2869f55..e825a10 100644 --- a/app/src/main/java/com/info/sn/network/api/GetBatchApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/GetBatchApi.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/uiui/sn/network/api/GetControlScreenshotApi.java b/app/src/main/java/com/uiui/sn/network/api/GetControlScreenshotApi.java new file mode 100644 index 0000000..6aabf03 --- /dev/null +++ b/app/src/main/java/com/uiui/sn/network/api/GetControlScreenshotApi.java @@ -0,0 +1,20 @@ +package com.uiui.sn.network.api; + +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; + +import io.reactivex.Observable; +import okhttp3.MultipartBody; +import retrofit2.http.Multipart; +import retrofit2.http.POST; +import retrofit2.http.Part; +import retrofit2.http.Query; + +public interface GetControlScreenshotApi { + @Multipart + @POST(UrlAddress.UPLOAD_CONTROL_SCREENSHOT) + Observable getControlScreenshot( + @Query("sn") String sn, + @Part MultipartBody.Part body + ); +} diff --git a/app/src/main/java/com/info/sn/network/api/GetGuideApi.java b/app/src/main/java/com/uiui/sn/network/api/GetGuideApi.java similarity index 68% rename from app/src/main/java/com/info/sn/network/api/GetGuideApi.java rename to app/src/main/java/com/uiui/sn/network/api/GetGuideApi.java index 120027c..87ccac7 100644 --- a/app/src/main/java/com/info/sn/network/api/GetGuideApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/GetGuideApi.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/GetGuideApiTest.java b/app/src/main/java/com/uiui/sn/network/api/GetGuideApiTest.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/GetGuideApiTest.java rename to app/src/main/java/com/uiui/sn/network/api/GetGuideApiTest.java index 2eb2d19..51c6305 100644 --- a/app/src/main/java/com/info/sn/network/api/GetGuideApiTest.java +++ b/app/src/main/java/com/uiui/sn/network/api/GetGuideApiTest.java @@ -1,7 +1,6 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/GetSnUidApi.java b/app/src/main/java/com/uiui/sn/network/api/GetSnUidApi.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/GetSnUidApi.java rename to app/src/main/java/com/uiui/sn/network/api/GetSnUidApi.java index c11c20f..023858f 100644 --- a/app/src/main/java/com/info/sn/network/api/GetSnUidApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/GetSnUidApi.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java b/app/src/main/java/com/uiui/sn/network/api/NewestAppUpdate.java similarity index 70% rename from app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java rename to app/src/main/java/com/uiui/sn/network/api/NewestAppUpdate.java index 8bcba69..19b1c82 100644 --- a/app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java +++ b/app/src/main/java/com/uiui/sn/network/api/NewestAppUpdate.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.AppInfo; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.AppInfo; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/QRCodeApi.java b/app/src/main/java/com/uiui/sn/network/api/QRCodeApi.java similarity index 60% rename from app/src/main/java/com/info/sn/network/api/QRCodeApi.java rename to app/src/main/java/com/uiui/sn/network/api/QRCodeApi.java index ccf2e9c..6543e4f 100644 --- a/app/src/main/java/com/info/sn/network/api/QRCodeApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/QRCodeApi.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/QueryAllApp.java b/app/src/main/java/com/uiui/sn/network/api/QueryAllApp.java similarity index 64% rename from app/src/main/java/com/info/sn/network/api/QueryAllApp.java rename to app/src/main/java/com/uiui/sn/network/api/QueryAllApp.java index 651c25e..f101874 100644 --- a/app/src/main/java/com/info/sn/network/api/QueryAllApp.java +++ b/app/src/main/java/com/uiui/sn/network/api/QueryAllApp.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.AppInfo; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.AppInfo; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import java.util.List; diff --git a/app/src/main/java/com/info/sn/network/api/QueryAppInside.java b/app/src/main/java/com/uiui/sn/network/api/QueryAppInside.java similarity index 68% rename from app/src/main/java/com/info/sn/network/api/QueryAppInside.java rename to app/src/main/java/com/uiui/sn/network/api/QueryAppInside.java index 056df51..7aba2f9 100644 --- a/app/src/main/java/com/info/sn/network/api/QueryAppInside.java +++ b/app/src/main/java/com/uiui/sn/network/api/QueryAppInside.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/QuerySnAppStart.java b/app/src/main/java/com/uiui/sn/network/api/QuerySnAppStart.java similarity index 51% rename from app/src/main/java/com/info/sn/network/api/QuerySnAppStart.java rename to app/src/main/java/com/uiui/sn/network/api/QuerySnAppStart.java index 14f3e12..d34d6ad 100644 --- a/app/src/main/java/com/info/sn/network/api/QuerySnAppStart.java +++ b/app/src/main/java/com/uiui/sn/network/api/QuerySnAppStart.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.AppStart; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.AppStart; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import java.util.List; @@ -12,8 +12,7 @@ import retrofit2.http.Query; public interface QuerySnAppStart { @GET(UrlAddress.GET_APP_START) - Observable>> - getAppStatu( + Observable>> getAppStatu( @Query("sn") String sn ); } diff --git a/app/src/main/java/com/info/sn/network/api/RunningApp.java b/app/src/main/java/com/uiui/sn/network/api/RunningApp.java similarity index 74% rename from app/src/main/java/com/info/sn/network/api/RunningApp.java rename to app/src/main/java/com/uiui/sn/network/api/RunningApp.java index f80f62a..5a04fe3 100644 --- a/app/src/main/java/com/info/sn/network/api/RunningApp.java +++ b/app/src/main/java/com/uiui/sn/network/api/RunningApp.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/SNInfoApi.java b/app/src/main/java/com/uiui/sn/network/api/SNInfoApi.java similarity index 60% rename from app/src/main/java/com/info/sn/network/api/SNInfoApi.java rename to app/src/main/java/com/uiui/sn/network/api/SNInfoApi.java index bb7f87d..62e8467 100644 --- a/app/src/main/java/com/info/sn/network/api/SNInfoApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/SNInfoApi.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/SaveSnUidApi.java b/app/src/main/java/com/uiui/sn/network/api/SaveSnUidApi.java similarity index 79% rename from app/src/main/java/com/info/sn/network/api/SaveSnUidApi.java rename to app/src/main/java/com/uiui/sn/network/api/SaveSnUidApi.java index 04b4a5e..d0b64b2 100644 --- a/app/src/main/java/com/info/sn/network/api/SaveSnUidApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/SaveSnUidApi.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.Response; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.Response; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/ScreenLock.java b/app/src/main/java/com/uiui/sn/network/api/ScreenLock.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/ScreenLock.java rename to app/src/main/java/com/uiui/sn/network/api/ScreenLock.java index 9656520..4a40463 100644 --- a/app/src/main/java/com/info/sn/network/api/ScreenLock.java +++ b/app/src/main/java/com/uiui/sn/network/api/ScreenLock.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/ScreenState.java b/app/src/main/java/com/uiui/sn/network/api/ScreenState.java similarity index 76% rename from app/src/main/java/com/info/sn/network/api/ScreenState.java rename to app/src/main/java/com/uiui/sn/network/api/ScreenState.java index 952d22f..46af373 100644 --- a/app/src/main/java/com/info/sn/network/api/ScreenState.java +++ b/app/src/main/java/com/uiui/sn/network/api/ScreenState.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.BuildConfig; -import com.info.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.bean.zuoye.BaseResponse; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/Setting.java b/app/src/main/java/com/uiui/sn/network/api/Setting.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/Setting.java rename to app/src/main/java/com/uiui/sn/network/api/Setting.java index 3aa75a1..d45c64f 100644 --- a/app/src/main/java/com/info/sn/network/api/Setting.java +++ b/app/src/main/java/com/uiui/sn/network/api/Setting.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/TimeControl.java b/app/src/main/java/com/uiui/sn/network/api/TimeControl.java similarity index 68% rename from app/src/main/java/com/info/sn/network/api/TimeControl.java rename to app/src/main/java/com/uiui/sn/network/api/TimeControl.java index a6e9b35..ba58bcb 100644 --- a/app/src/main/java/com/info/sn/network/api/TimeControl.java +++ b/app/src/main/java/com/uiui/sn/network/api/TimeControl.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.GET; diff --git a/app/src/main/java/com/info/sn/network/api/UpdateAdminSn.java b/app/src/main/java/com/uiui/sn/network/api/UpdateAdminSn.java similarity index 80% rename from app/src/main/java/com/info/sn/network/api/UpdateAdminSn.java rename to app/src/main/java/com/uiui/sn/network/api/UpdateAdminSn.java index c10250e..4f0f163 100644 --- a/app/src/main/java/com/info/sn/network/api/UpdateAdminSn.java +++ b/app/src/main/java/com/uiui/sn/network/api/UpdateAdminSn.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/UploadScreenshot.java b/app/src/main/java/com/uiui/sn/network/api/UploadScreenshot.java similarity index 78% rename from app/src/main/java/com/info/sn/network/api/UploadScreenshot.java rename to app/src/main/java/com/uiui/sn/network/api/UploadScreenshot.java index d372a9e..2b58b43 100644 --- a/app/src/main/java/com/info/sn/network/api/UploadScreenshot.java +++ b/app/src/main/java/com/uiui/sn/network/api/UploadScreenshot.java @@ -1,7 +1,7 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import okhttp3.MultipartBody; diff --git a/app/src/main/java/com/info/sn/network/api/UserInfoApi.java b/app/src/main/java/com/uiui/sn/network/api/UserInfoApi.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/UserInfoApi.java rename to app/src/main/java/com/uiui/sn/network/api/UserInfoApi.java index 9f05cac..e0e5928 100644 --- a/app/src/main/java/com/info/sn/network/api/UserInfoApi.java +++ b/app/src/main/java/com/uiui/sn/network/api/UserInfoApi.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.UserAvatarInfo; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.UserAvatarInfo; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/network/api/UserInfoControl.java b/app/src/main/java/com/uiui/sn/network/api/UserInfoControl.java similarity index 67% rename from app/src/main/java/com/info/sn/network/api/UserInfoControl.java rename to app/src/main/java/com/uiui/sn/network/api/UserInfoControl.java index 59bbcad..f5f41f1 100644 --- a/app/src/main/java/com/info/sn/network/api/UserInfoControl.java +++ b/app/src/main/java/com/uiui/sn/network/api/UserInfoControl.java @@ -1,8 +1,8 @@ -package com.info.sn.network.api; +package com.uiui.sn.network.api; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.UserAvatarInfo; -import com.info.sn.network.UrlAddress; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.UserAvatarInfo; +import com.uiui.sn.network.UrlAddress; import io.reactivex.Observable; import retrofit2.http.Field; diff --git a/app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java b/app/src/main/java/com/uiui/sn/receiver/APKinstallReceiver.java similarity index 83% rename from app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java rename to app/src/main/java/com/uiui/sn/receiver/APKinstallReceiver.java index 9f45200..37be757 100644 --- a/app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java +++ b/app/src/main/java/com/uiui/sn/receiver/APKinstallReceiver.java @@ -1,36 +1,25 @@ -package com.info.sn.receiver; +package com.uiui.sn.receiver; import android.annotation.SuppressLint; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.Context; import android.content.Intent; -import android.content.pm.ApplicationInfo; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.content.pm.ResolveInfo; -import android.os.Build; import android.text.TextUtils; import android.util.Log; -import com.alibaba.fastjson.JSONArray; -import com.info.sn.bean.zuoye.AppUploadInfo; -import com.info.sn.network.HTTPInterface; -import com.info.sn.utils.ApkUtils; -import com.info.sn.utils.CacheUtils; -import com.info.sn.utils.JGYUtils; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.service.ManagerService; +import com.uiui.sn.utils.ApkUtils; +import com.uiui.sn.utils.CacheUtils; +import com.uiui.sn.utils.JGYUtils; -import java.util.ArrayList; -import java.util.List; import java.util.concurrent.TimeUnit; import io.reactivex.Observable; import io.reactivex.ObservableEmitter; -import io.reactivex.ObservableOnSubscribe; import io.reactivex.Observer; -import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.Disposable; -import io.reactivex.schedulers.Schedulers; public class APKinstallReceiver extends BroadcastReceiver { private static String TAG = APKinstallReceiver.class.getSimpleName(); @@ -74,9 +63,9 @@ public class APKinstallReceiver extends BroadcastReceiver { Log.e(TAG, "sendAppInfo: " + state + packageName); newAppListener.setNewAppListener(packageName); //启动应用市场 - if ("com.jgyapp.market".equals(packageName)) { + if ("com.uiui.appstore".equals(packageName)) { Intent bootIntent = new Intent(BootReceiver.BOOT_COMPLETED); - bootIntent.setComponent(new ComponentName("com.jgyapp.market", "com.jgyapp.market.receiver.BootReceiver")); + bootIntent.setComponent(new ComponentName("com.uiui.appstore", "com.uiui.appstore.receiver.BootReceiver")); context.sendBroadcast(bootIntent); } else if ("com.uiuios.updatetools".equals(packageName)) { //启动升级组件 @@ -118,6 +107,8 @@ public class APKinstallReceiver extends BroadcastReceiver { HTTPInterface.getForceInstall(mContext); HTTPInterface.getAllappPackage(mContext); HTTPInterface.getAppInside(mContext); + HTTPInterface.checkUpdate(mContext, "com.uiui.appstore"); + HTTPInterface.checkUpdate(mContext, "com.uiui.browser"); } @Override diff --git a/app/src/main/java/com/info/sn/receiver/BootReceiver.java b/app/src/main/java/com/uiui/sn/receiver/BootReceiver.java similarity index 87% rename from app/src/main/java/com/info/sn/receiver/BootReceiver.java rename to app/src/main/java/com/uiui/sn/receiver/BootReceiver.java index b210785..ee78638 100644 --- a/app/src/main/java/com/info/sn/receiver/BootReceiver.java +++ b/app/src/main/java/com/uiui/sn/receiver/BootReceiver.java @@ -1,15 +1,15 @@ -package com.info.sn.receiver; +package com.uiui.sn.receiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; -import com.info.sn.service.GuardService; -import com.info.sn.service.MainService; -import com.info.sn.service.ManagerService; -import com.info.sn.service.DownloadService; -import com.info.sn.service.StepService; +import com.uiui.sn.service.GuardService; +import com.uiui.sn.service.MainService; +import com.uiui.sn.service.ManagerService; +import com.uiui.sn.service.DownloadService; +import com.uiui.sn.service.StepService; public class BootReceiver extends BroadcastReceiver { diff --git a/app/src/main/java/com/info/sn/receiver/InstallResultReceiver.java b/app/src/main/java/com/uiui/sn/receiver/InstallResultReceiver.java similarity index 97% rename from app/src/main/java/com/info/sn/receiver/InstallResultReceiver.java rename to app/src/main/java/com/uiui/sn/receiver/InstallResultReceiver.java index 8effd02..b13bfb0 100644 --- a/app/src/main/java/com/info/sn/receiver/InstallResultReceiver.java +++ b/app/src/main/java/com/uiui/sn/receiver/InstallResultReceiver.java @@ -1,4 +1,4 @@ -package com.info.sn.receiver; +package com.uiui.sn.receiver; import android.content.BroadcastReceiver; import android.content.Context; @@ -9,8 +9,6 @@ import android.util.Log; import androidx.annotation.RequiresApi; -import com.info.sn.utils.ToastUtil; - public class InstallResultReceiver extends BroadcastReceiver { private static final String TAG = "InstallResultReceiver"; diff --git a/app/src/main/java/com/info/sn/receiver/MyJPushReceiver.java b/app/src/main/java/com/uiui/sn/receiver/MyJPushReceiver.java similarity index 64% rename from app/src/main/java/com/info/sn/receiver/MyJPushReceiver.java rename to app/src/main/java/com/uiui/sn/receiver/MyJPushReceiver.java index bd14a60..8d13b98 100644 --- a/app/src/main/java/com/info/sn/receiver/MyJPushReceiver.java +++ b/app/src/main/java/com/uiui/sn/receiver/MyJPushReceiver.java @@ -1,91 +1,75 @@ -package com.info.sn.receiver; +package com.uiui.sn.receiver; import android.annotation.SuppressLint; import android.bluetooth.BluetoothAdapter; import android.content.BroadcastReceiver; +import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.CountDownTimer; import android.os.Environment; import android.os.Handler; -import android.provider.Settings; import android.text.TextUtils; import android.util.Log; import android.view.Gravity; import android.view.WindowManager; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.arialyy.aria.core.Aria; import com.arialyy.aria.core.download.DownloadEntity; -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.google.gson.reflect.TypeToken; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.bean.gankao.CancelUserPower; -import com.info.sn.bean.gankao.GankaoBaseResponse; -import com.info.sn.bean.gankao.PowerUser; -import com.info.sn.bean.gankao.UserProduct; -import com.info.sn.bean.gankao.UserProductCards; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.Response; -import com.info.sn.bean.zuoye.SNUidBean; -import com.info.sn.config.Scheme; -import com.info.sn.jpush.Logger; -import com.info.sn.manager.ControlManager; -import com.info.sn.network.HTTPInterface; -import com.info.sn.manager.NetInterfaceManager; -import com.info.sn.network.api.BindDevices; -import com.info.sn.network.api.UploadScreenshot; -import com.info.sn.service.MainService; -import com.info.sn.service.ManagerService; -import com.info.sn.utils.ApkUtils; -import com.info.sn.utils.CacheUtils; -import com.info.sn.utils.CmdUtil; -import com.info.sn.manager.DeviceManager; -import com.info.sn.utils.ForegroundAppUtil; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.LaunchTools; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ServiceAliveUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.Utils; -import com.info.sn.dialog.CustomDialog; - -import org.jetbrains.annotations.NotNull; +import com.blankj.utilcode.util.ImageUtils; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.dialog.CustomDialog; +import com.uiui.sn.jpush.Logger; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.manager.DeviceManager; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.network.api.UploadScreenshot; +import com.uiui.sn.service.MainService; +import com.uiui.sn.service.ManagerService; +import com.uiui.sn.utils.ApkUtils; +import com.uiui.sn.utils.CacheUtils; +import com.uiui.sn.utils.CmdUtil; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ServiceAliveUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.Utils; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; import java.io.File; -import java.lang.reflect.Type; -import java.text.ParseException; -import java.text.SimpleDateFormat; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.InputStream; import java.util.ArrayList; import java.util.Arrays; -import java.util.Date; -import java.util.HashMap; import java.util.HashSet; import java.util.List; -import java.util.TimeZone; import cn.jpush.android.api.JPushInterface; import io.reactivex.Observable; import io.reactivex.ObservableEmitter; import io.reactivex.ObservableOnSubscribe; +import io.reactivex.ObservableSource; import io.reactivex.Observer; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.annotations.NonNull; import io.reactivex.disposables.Disposable; +import io.reactivex.functions.Function; import io.reactivex.schedulers.Schedulers; import okhttp3.MediaType; import okhttp3.MultipartBody; import okhttp3.RequestBody; -import static com.info.sn.service.ManagerService.LOCK_STATE; +import static com.uiui.sn.service.ManagerService.LOCK_STATE; /** * 自定义接收器 @@ -178,6 +162,32 @@ public class MyJPushReceiver extends BroadcastReceiver { private static final String JIGUANG_UPGRADE_COMBO = "44"; //设备授权和解除 private static final String JIGUANG_BIND_UNBIND = "45"; + //飞行模式 + private static final String JIGUANG_FLIGHT_MODE = "47"; + //勿扰模式 + private static final String JIGUANG_NOTDISTURB_MODE = "48"; + //定位 + private static final String JIGUANG_LOCATION = "49"; + //充电提醒 + private static final String JIGUANG_CHARGING_REMINDER = "50"; + //音量调节 + private static final String JIGUANG_VOLUME = "52"; + //亮度调节 + private static final String JIGUANG_LUMINANCE = "53"; + //字体大小调节 + private static final String JIGUANG_TYPEFACE = "54"; + //自动旋转 + private static final String JIGUANG_SCREEN_ROTATION = "55"; + //WiFi设置 + private static final String JIGUANG_WIFI_SET = "56"; + //闹钟 + private static final String JIGUANG_ALARM_CLOCK = "57"; + //应用白名单 + private static final String JIGUANG_APP_WHITELIST = "58"; + //隐藏图标 + private static final String JIGUANG_HIDE_APPICON = "59"; + //优化内存 + private static final String JIGUANG_KILL_APP = "60"; @Override @@ -410,15 +420,12 @@ public class MyJPushReceiver extends BroadcastReceiver { break; case JIGUANG_CHANGE_COMBO: ToastUtil.debugShow("更换套餐"); - changeCombo(context, extras); break; case JIGUANG_CANCEL_COMBO: ToastUtil.debugShow("取消套餐"); - cancleCombo(context, extras); break; case JIGUANG_UPGRADE_COMBO: ToastUtil.debugShow("升级套餐"); - upgradeCombo(context, extras); case JIGUANG_APP_BROWSER: ToastUtil.debugShow("收到推送消息: 系统APP管控"); Log.e(TAG, "processCustomMessage: " + extras); @@ -430,7 +437,32 @@ public class MyJPushReceiver extends BroadcastReceiver { MainService.getPresenter().getForceInstall(); DeviceManager.doMasterClear(); break; - + case JIGUANG_FLIGHT_MODE: + break; + case JIGUANG_NOTDISTURB_MODE: + break; + case JIGUANG_LOCATION: + break; + case JIGUANG_CHARGING_REMINDER: + break; + case JIGUANG_VOLUME: + break; + case JIGUANG_LUMINANCE: + break; + case JIGUANG_SCREEN_ROTATION: + break; + case JIGUANG_WIFI_SET: + break; + case JIGUANG_ALARM_CLOCK: + setAlarmCLock(context, extras); + break; + case JIGUANG_APP_WHITELIST: + break; + case JIGUANG_HIDE_APPICON: + break; + case JIGUANG_KILL_APP: + Utils.killBackgroundApp(context); + break; } } @@ -441,8 +473,11 @@ public class MyJPushReceiver extends BroadcastReceiver { synchronized private void sendStartTime(Context context, String jsonString) { HTTPInterface.updateAdminInfo(context); - HTTPInterface.sendRunningApp(context); +// HTTPInterface.sendRunningApp(context); HTTPInterface.sendAppUsed(context); + if (JGYUtils.getInstance().isScreenOn()) { + HTTPInterface.screenshot(context); + } } synchronized private void setUsbState(Context context, String jsonString) { @@ -589,7 +624,7 @@ public class MyJPushReceiver extends BroadcastReceiver { file.mkdirs(); Aria.download(this) .load(url) - .setFilePath(file.getAbsolutePath() + "/" + packages + ".apk") + .setFilePath(JGYUtils.getInstance().getDownLoadPath() + packages + ".apk") .ignoreFilePathOccupy() .setExtendField(packages).create(); Aria.download(this).resumeAllTask(); @@ -659,19 +694,21 @@ public class MyJPushReceiver extends BroadcastReceiver { } synchronized private void bind(final Context context, String id, int type) { - BindDevices bindDevices = NetInterfaceManager.getInstance().getbindDevicesControl(); - bindDevices.getBindDevices(Utils.getSerial(), id, type) + NetInterfaceManager.getInstance() + .getbindDevicesControl() + .getBindDevices(Utils.getSerial(), id, type) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Observer() { @Override public void onSubscribe(@NonNull Disposable d) { - + Log.e("bind", "onSubscribe: "); } @Override public void onNext(@NonNull BaseResponse baseResponse) { int code = baseResponse.code; + Log.e("bind", "onNext: " + baseResponse); String msg = baseResponse.msg; // Log.e("bind", baseResponse.toString()); if (code == 200) { @@ -683,12 +720,12 @@ public class MyJPushReceiver extends BroadcastReceiver { @Override public void onError(@NonNull Throwable e) { - Log.e("bind", e.getMessage()); + Log.e("bind", "onError: " + e.getMessage()); } @Override public void onComplete() { - + Log.e("bind", "onComplete: "); } }); } @@ -784,35 +821,159 @@ public class MyJPushReceiver extends BroadcastReceiver { context.sendBroadcast(intent); } - public void doscreenshot(final Context context) { - final long time = System.currentTimeMillis(); - Observable.create(new ObservableOnSubscribe() { + private static Observable getScreenshot(Context context, String filePath) { + Observable screenshotObservable = Observable.create(new ObservableOnSubscribe() { @Override - public void subscribe(ObservableEmitter e) throws Exception { - String filepath = context.getExternalFilesDir("db").getAbsolutePath(); - int n = CmdUtil.execute("screencap -p " + filepath + File.separator + time + ".png").code; - e.onNext(n); + public void subscribe(ObservableEmitter e) { + int code = CmdUtil.execute("screencap -p " + filePath).code; + e.onNext(code); + e.onComplete(); + } + }).subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()); + return screenshotObservable; + } + + private static Observable getSendFile(String path, MultipartBody.Part body) { + return NetInterfaceManager.getInstance() + .getUploadScreenshotControl() + .uploadScreenshot(Utils.getSerial(), body) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()); + } + + public static void doscreenshot(Context context) { + String path = context.getExternalFilesDir("db").getAbsolutePath(); + String filePath = path + File.separator + Utils.getSerial() + ".png"; + getScreenshot(context, filePath).concatMap(new Function>() { + @Override + public ObservableSource apply(Integer integer) throws Exception { + if (integer != 0) { + throw new FileNotFoundException(); + } + File file = new File(filePath); + if (!file.exists()) { + throw new FileNotFoundException(filePath); + } + Bitmap bitmap = BitmapFactory.decodeFile(filePath); + if (bitmap.getWidth() < bitmap.getHeight()) { + bitmap = ImageUtils.rotate(bitmap, -90, bitmap.getWidth(), bitmap.getHeight()); + } + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); + file.createNewFile(); + FileOutputStream fos = new FileOutputStream(file); + InputStream is = new ByteArrayInputStream(baos.toByteArray()); + int x; + byte[] b = new byte[1024 * 100]; + while ((x = is.read(b)) != -1) { + fos.write(b, 0, x); + } + fos.close(); + RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file); + MultipartBody.Part body = MultipartBody.Part.createFormData("file", file.getName(), requestFile); + return getSendFile(filePath, body); } }).subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + Log.e("screenshot", "onSubscribe: "); + } + + @Override + public void onNext(BaseResponse baseResponse) { + Log.e("screenshot", "onNext: " + baseResponse); + } + + @Override + public void onError(Throwable e) { + Log.e("screenshot", "onError: " + e.getMessage()); + onComplete(); + } + + @Override + public void onComplete() { + Log.e("screenshot", "onComplete: "); + } + }); + } + +// public void doscreenshot(final Context context) { +// final long time = System.currentTimeMillis(); +// Observable.create(new ObservableOnSubscribe() { +// @Override +// public void subscribe(ObservableEmitter e) throws Exception { +// String filepath = context.getExternalFilesDir("db").getAbsolutePath(); +// int n = CmdUtil.execute("screencap -p " + filepath + File.separator + time + ".png").code; +// e.onNext(n); +// } +// }).subscribeOn(Schedulers.io()) +// .observeOn(AndroidSchedulers.mainThread()) +// .subscribe(new Observer() { +// @Override +// public void onSubscribe(Disposable d) { +// +// } +// +// @Override +// public void onNext(Integer integer) { +// if (integer == 0) { +// uplaodImage(context, time); +// } else { +// Log.e("doss", "失败"); +// } +// } +// +// @Override +// public void onError(Throwable e) { +// Log.e("doss", "Throwable=" + e.getMessage()); +// } +// +// @Override +// public void onComplete() { +// +// } +// }); +// } + + private void uplaodImage(final Context context, long time) { + String filepath = context.getExternalFilesDir("db").getAbsolutePath(); +// String filepath = mContext.getFileStreamPath("screenshot").getAbsolutePath(); + //放在app内部data下面 + File file = new File(filepath + File.separator + time + ".png"); + //不要直接使用常用图片格式 + if (!file.exists()) { + Log.e("uplaodImage", "File does not exists"); + return; + } + RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file); + MultipartBody.Part body = MultipartBody.Part.createFormData("file", file.getName(), requestFile); + NetInterfaceManager.getInstance() + .getUploadScreenshotControl() + .uploadScreenshot(Utils.getSerial(), body) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { @Override public void onSubscribe(Disposable d) { } @Override - public void onNext(Integer integer) { - if (integer == 0) { - uplaodImage(context, time); + public void onNext(BaseResponse baseResponse) { + int code = baseResponse.code; + if (code == 200) { + Log.e(TAG, "onNext: " + baseResponse.msg); } else { - Log.e("doss", "失败"); + Log.e(TAG, code + ": " + baseResponse.msg); } } @Override public void onError(Throwable e) { - Log.e("doss", "Throwable=" + e.getMessage()); + Log.e("uplaod", "onError: " + e.getMessage()); } @Override @@ -820,6 +981,7 @@ public class MyJPushReceiver extends BroadcastReceiver { } }); + } /** @@ -863,52 +1025,6 @@ public class MyJPushReceiver extends BroadcastReceiver { } } - - private void uplaodImage(final Context context, long time) { - String filepath = context.getExternalFilesDir("db").getAbsolutePath(); -// String filepath = mContext.getFileStreamPath("screenshot").getAbsolutePath(); - //放在app内部data下面 - File file = new File(filepath + File.separator + time + ".png"); - //不要直接使用常用图片格式 - if (!file.exists()) { - Log.e("uplaodImage", "File does not exists"); - return; - } - UploadScreenshot uploadScreenshot = NetInterfaceManager.getInstance().getUploadScreenshotControl(); - RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file); - MultipartBody.Part body = MultipartBody.Part.createFormData("file", file.getName(), requestFile); - uploadScreenshot.uploadScreenshot(Utils.getSerial(), body) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - - } - - @Override - public void onNext(BaseResponse baseResponse) { - int code = baseResponse.code; - if (code == 200) { - Log.e(TAG, "onNext: " + baseResponse.msg); - } else { - Log.e(TAG, code + ": " + baseResponse.msg); - } - } - - @Override - public void onError(Throwable e) { - Log.e("uplaod", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - - } - }); - - } - private void timeControl(Context context, String jsonString) { HTTPInterface.getTimeControl(context); } @@ -995,444 +1111,10 @@ public class MyJPushReceiver extends BroadcastReceiver { JGYUtils.getInstance().updateForbidList(); } - - private void changeCombo(Context context, String jsonString) { - Log.e(TAG, "changeCombo: " + jsonString); - JSONObject jsonObject = JSON.parseObject(jsonString); - JSONObject edit_card_info = jsonObject.getJSONObject("edit_card_info"); - String taocan = edit_card_info.getString("taocan"); - if (TextUtils.isEmpty(taocan)) { - ToastUtil.show("要修改的套餐名为空"); - } else { - HashSet infoSet = new HashSet<>(Arrays.asList(taocan.split(","))); - for (String cardInfo : infoSet) { - queryAvailableProduct(context, cardInfo); - } - } + private void setAlarmCLock(Context context, String ex) { + Intent bootIntent = new Intent(BootReceiver.BOOT_COMPLETED); + bootIntent.setComponent(new ComponentName("com.uiui.os", "com.uiui.os.receiver.BootReceiver")); + context.sendBroadcast(bootIntent); } - public void queryAvailableProduct(Context context, String card_info) { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - NetInterfaceManager.getInstance() - .getQueryProductControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + ":queryAvailableProduct", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + ":queryAvailableProduct", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10000) { - Type type = new TypeToken>() { - }.getType(); - Gson gson = new Gson(); - List availableProductList = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - AvailableProduct product = null; - for (AvailableProduct availableProduct : availableProductList) { - if (availableProduct.getDuration().contains(card_info)) { - product = availableProduct; - } - } - activeUser(context, product); - } else { - ToastUtil.show("获取激活套餐失败"); - } - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + ":queryAvailableProduct", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e(TAG + ":queryAvailableProduct", "onComplete: "); - } - }); - } - - public void activeUser(Context context, @NotNull AvailableProduct product) { - if (product == null) { - ToastUtil.show("获取套餐失败"); - return; - } - String specification_id = product.getSpecification_id(); - Log.e(TAG, "activeUser: specification_id: " + specification_id); - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - params.put("specification_id", String.valueOf(specification_id)); - - NetInterfaceManager.getInstance() - .getActiveUserControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params), uid, specification_id) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + ":activeUser", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + ":activeUser", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - switch (gankaoBaseResponse.code) { - case 10000: - case 50000: - queryAvailableProduct(context); - ToastUtil.show("激活成功:" + product.getDuration()); - break; - default: - break; - - } - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + ":activeUser", "onError: "); - } - - @Override - public void onComplete() { - Log.e(TAG + ":activeUser", "onComplete: "); - } - }); - } - - - interface GetUserProductsCallback { - void activeUserProduct(UserProduct activeUserProduct); - } - - private void getUserProducts(String card_info, GetUserProductsCallback callback) { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - NetInterfaceManager.getInstance() - .getUserProductsControl() - .getUserProducts(appid, timestamp, LaunchTools.getToken(params), uid) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer>>>() { - @Override - public void onSubscribe(Disposable d) { - - } - - @Override - public void onNext(GankaoBaseResponse>> userProductCardsGankaoBaseResponse) { - Log.e("getUserProducts", "onNext: " + userProductCardsGankaoBaseResponse.toString()); - if (userProductCardsGankaoBaseResponse.code == 200) { - UserProduct userProduct = null; - for (UserProduct product : userProductCardsGankaoBaseResponse.data.getCards()) { - if (product.getName().contains("权益套装") && product.getName().contains(card_info)) { - userProduct = product; - } - } - callback.activeUserProduct(userProduct); - } else { - ToastUtil.show("获取用户已激活的套餐失败"); - callback.activeUserProduct(null); - } - } - - @Override - public void onError(Throwable e) { - Log.e("getUserProducts", "onError: " + e.getMessage()); - callback.activeUserProduct(null); - onComplete(); - } - - @Override - public void onComplete() { - Log.e("getUserProducts", "onComplete: "); - } - }); - } - - private void cancleCombo(Context context, String jsonString) { - Log.e(TAG, "cancleCombo: " + jsonString); - JSONObject jsonObject = JSON.parseObject(jsonString); - List snUidBeans = JSON.parseArray(jsonObject.getJSONArray("delete_card_info").toJSONString(), SNUidBean.class); - for (SNUidBean snUidBean : snUidBeans) { - cancelUserPower(context, snUidBean); - try { - wait(1500); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } - - private void cancelUserPower(Context context, SNUidBean snUidBean) { - String app_id = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String user_power_id = snUidBean.getUser_power_id(); - String specification_id = snUidBean.getSpecification_id(); - - HashMap params = new HashMap<>(); - params.put("app_id", app_id); - params.put("timestamp", timestamp); - params.put("user_power_id", user_power_id); - params.put("specification_id", specification_id); - - NetInterfaceManager.getInstance() - .getCancelUserPowerControl() - .cancelUserPower(app_id, timestamp, LaunchTools.getToken(params), user_power_id, specification_id) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer>() { - @Override - public void onSubscribe(Disposable d) { - Log.e("cancelUserPower", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse cancelUserPowerGankaoBaseResponse) { - Log.e("cancelUserPower", "onNext: " + JSONObject.toJSONString(cancelUserPowerGankaoBaseResponse)); - switch (cancelUserPowerGankaoBaseResponse.code) { - default: - break; - case 10000: - - break; - case 50000: - - break; - } - queryAvailableProduct(context); - } - - @Override - public void onError(Throwable e) { - Log.e("cancelUserPower", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e("cancelUserPower", "onComplete: "); - } - }); - } - - public void queryAvailableProduct(Context context) { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - NetInterfaceManager.getInstance() - .getQueryProductControl() - .activeUser(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "queryAvailableProduct", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e(TAG + "queryAvailableProduct", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - if (gankaoBaseResponse.code == 10000) { - Type type = new TypeToken>() { - }.getType(); - Gson gson = new Gson(); - List availableProductList = gson.fromJson(gson.toJson(gankaoBaseResponse.data), type); - for (AvailableProduct product : availableProductList) { - mAvailableProductHashMap.put(product.getDuration(), product.getSpecification_id()); - } - queryPowerUserList(context); - } else { - ToastUtil.show("获取激活套餐失败"); - } - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "queryAvailableProduct", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e(TAG + "queryAvailableProduct", "onComplete: "); - } - }); - } - - private HashMap mAvailableProductHashMap = new HashMap<>(); - - public void queryPowerUserList(Context context) { - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - HashMap params = new HashMap<>(); - params.put("appid", appid); - params.put("timestamp", timestamp); - - NetInterfaceManager.getInstance() - .getQueryPowerUserListControl() - .queryPowerUserList(appid, timestamp, LaunchTools.getToken(params)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e("queryPowerUserList", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e("queryPowerUserList", "onNext: "); -// Log.e("queryPowerUserList", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - int code = gankaoBaseResponse.code; - if (code == 10000) { - Gson gson = new Gson(); - Type type = new TypeToken>() { - }.getType(); - JsonObject data = JsonParser.parseString(gson.toJson(gankaoBaseResponse.data)).getAsJsonObject(); - JsonArray powerlist = data.getAsJsonArray("powerlist"); - List powerUserList = gson.fromJson(gson.toJson(powerlist), type); - Log.e("queryPowerUserList", "onNext: " + JSONObject.toJSONString(powerUserList)); - JSONArray jsonArray = new JSONArray(); - if (powerUserList != null && powerUserList.size() != 0) { - for (PowerUser powerUser : powerUserList) { - if (powerUser.getUserID().equals(Utils.getSerial())) { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("card_info", powerUser.getAuthorityName()); - jsonObject.put("grade", powerUser.getGrade()); - jsonObject.put("activate_time", getTime(powerUser.getAuthorizationDate())); - jsonObject.put("user_power_id", powerUser.getAuthorizationNumber()); - jsonObject.put("specification_id", mAvailableProductHashMap.get(powerUser.getAuthorityName())); - jsonArray.add(jsonObject); - } - } - } - sendUid(context, jsonArray.toJSONString()); - } - } - - @Override - public void onError(Throwable e) { - Log.e("queryPowerUserList", "onError: " + e.getMessage()); - onComplete(); - } - - @Override - public void onComplete() { - Log.e("queryPowerUserList", "onComplete: "); - } - }); - } - - private String getTime(String timestamp) { - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.S'Z'"); - sdf.setTimeZone(TimeZone.getTimeZone("GMT+00")); - SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - try { - Date date = sdf.parse(timestamp);//拿到Date对象. - String str = sdf2.format(date); - return str; - } catch (ParseException e) { - e.printStackTrace(); - return timestamp; - } - } - - public void sendUid(Context context, String jsonString) { - int grade = (int) SPUtils.get(context, "int_grade", 0); - - String gankaoUID = Settings.System.getString(context.getContentResolver(), "gankaoUID"); - if (TextUtils.isEmpty(gankaoUID)) { - ToastUtil.show("获取设备UID失败,请重新激活"); - } - Log.e(TAG, "sendUid: " + jsonString); - NetInterfaceManager.getInstance() - .getSaveSnUidApiControl() - .saveSnUid(Utils.getSerial(), gankaoUID, grade, jsonString) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e(TAG + "sendUid", "onSubscribe: "); - } - - @Override - public void onNext(Response response) { - Log.e(TAG + "sendUid", "onNext: " + JSONObject.toJSONString(response)); - } - - @Override - public void onError(Throwable e) { - Log.e(TAG + "sendUid", "onError: " + e.getMessage()); - onComplete(); - } - - @Override - public void onComplete() { - Log.e(TAG + "sendUid", "onComplete: "); - } - }); - } - - private void upgradeCombo(Context context, String jsonString) { - Log.e(TAG, "upgradeCombo: " + jsonString); - JSONObject jsonObject = JSON.parseObject(jsonString); - String appid = Scheme.partner_id; - String timestamp = String.valueOf(System.currentTimeMillis()); - String uid = Utils.getSerial(); - String user_power_id = jsonObject.getString("user_power_id"); - HashMap params = new HashMap<>(); - params.put("app_id", appid); - params.put("timestamp", timestamp); - params.put("uid", uid); - params.put("user_power_id", user_power_id); - - NetInterfaceManager.getInstance() - .getUpgradeUserPowerControl() - .upgradeUserPower(appid, timestamp, LaunchTools.getToken(params), uid, user_power_id) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Observer() { - @Override - public void onSubscribe(Disposable d) { - Log.e("upgradeCombo", "onSubscribe: "); - } - - @Override - public void onNext(GankaoBaseResponse gankaoBaseResponse) { - Log.e("upgradeCombo", "onNext: " + JSONObject.toJSONString(gankaoBaseResponse)); - } - - @Override - public void onError(Throwable e) { - Log.e("upgradeCombo", "onError: " + e.getMessage()); - } - - @Override - public void onComplete() { - Log.e("upgradeCombo", "onComplete: "); - } - }); - } } diff --git a/app/src/main/java/com/info/sn/service/DownloadService.java b/app/src/main/java/com/uiui/sn/service/DownloadService.java similarity index 91% rename from app/src/main/java/com/info/sn/service/DownloadService.java rename to app/src/main/java/com/uiui/sn/service/DownloadService.java index e1f7464..aacdeec 100644 --- a/app/src/main/java/com/info/sn/service/DownloadService.java +++ b/app/src/main/java/com/uiui/sn/service/DownloadService.java @@ -1,21 +1,16 @@ -package com.info.sn.service; +package com.uiui.sn.service; import android.app.AlertDialog; import android.app.Service; import android.content.DialogInterface; import android.content.Intent; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; import android.os.Bundle; import android.os.Environment; -import android.os.Handler; import android.os.IBinder; -import android.os.Message; import android.text.TextUtils; import android.util.Log; import android.view.WindowManager; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.alibaba.fastjson.JSON; @@ -24,10 +19,9 @@ import com.arialyy.annotations.Download; import com.arialyy.aria.core.Aria; import com.arialyy.aria.core.task.DownloadTask; import com.blankj.utilcode.util.ToastUtils; -import com.info.sn.KeepAliveConnection; -import com.info.sn.R; -import com.info.sn.utils.ApkUtils; -import com.info.sn.utils.JGYUtils; +import com.uiui.sn.KeepAliveConnection; +import com.uiui.sn.R; +import com.uiui.sn.utils.ApkUtils; import java.io.File; @@ -126,7 +120,7 @@ public class DownloadService extends Service { //在这里处理任务执行中的状态,如进度进度条的刷新 @Download.onTaskRunning void running(DownloadTask task) { - Log.e("aria running", "正在下载:" + task.getState() + "--" + task.getPercent() + "--" + task.getExtendField()); + Log.e("aria running", "正在下载:" + task.getState() + "-" + task.getPercent() + "--" + task.getExtendField()); String appName = ""; try { String jsonString = task.getExtendField(); @@ -137,7 +131,7 @@ public class DownloadService extends Service { } catch (Exception e) { Log.e("running", "running: " + e.getMessage()); } - ToastUtils.showShort("正在下载:" + appName + "--" + task.getPercent() + "%"); + ToastUtils.showShort("正在下载:" + appName + "-" + task.getPercent() + "%"); } @Download.onTaskComplete diff --git a/app/src/main/java/com/info/sn/service/GuardService.java b/app/src/main/java/com/uiui/sn/service/GuardService.java similarity index 94% rename from app/src/main/java/com/info/sn/service/GuardService.java rename to app/src/main/java/com/uiui/sn/service/GuardService.java index eadf502..b3fc0bb 100644 --- a/app/src/main/java/com/info/sn/service/GuardService.java +++ b/app/src/main/java/com/uiui/sn/service/GuardService.java @@ -1,4 +1,4 @@ -package com.info.sn.service; +package com.uiui.sn.service; /** * 作者 mjsheng @@ -17,8 +17,8 @@ import android.util.Log; import androidx.annotation.Nullable; -import com.info.sn.KeepAliveConnection; -import com.info.sn.utils.ServiceAliveUtils; +import com.uiui.sn.KeepAliveConnection; +import com.uiui.sn.utils.ServiceAliveUtils; /** diff --git a/app/src/main/java/com/info/sn/service/MainService.java b/app/src/main/java/com/uiui/sn/service/MainService.java similarity index 94% rename from app/src/main/java/com/info/sn/service/MainService.java rename to app/src/main/java/com/uiui/sn/service/MainService.java index 59454b0..7c7d4a3 100644 --- a/app/src/main/java/com/info/sn/service/MainService.java +++ b/app/src/main/java/com/uiui/sn/service/MainService.java @@ -1,4 +1,4 @@ -package com.info.sn.service; +package com.uiui.sn.service; import android.app.Service; import android.content.Intent; @@ -12,19 +12,19 @@ import android.util.Log; import com.alibaba.fastjson.JSONObject; import com.blankj.utilcode.util.NetworkUtils; -import com.info.sn.activity.main.MainActivity; -import com.info.sn.activity.main.MainContact; -import com.info.sn.activity.main.MainPresenter; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.bean.zuoye.UserInfo; -import com.info.sn.bean.gankao.AvailableProduct; -import com.info.sn.config.Configs; -import com.info.sn.jpush.TagAliasOperatorHelper; -import com.info.sn.manager.ControlManager; -import com.info.sn.network.HTTPInterface; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.ToastUtil; -import com.info.sn.utils.Utils; +import com.uiui.sn.activity.main.MainActivity; +import com.uiui.sn.activity.main.MainContact; +import com.uiui.sn.activity.main.MainPresenter; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.bean.zuoye.UserInfo; +import com.uiui.sn.bean.gankao.AvailableProduct; +import com.uiui.sn.config.Configs; +import com.uiui.sn.jpush.TagAliasOperatorHelper; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.ToastUtil; +import com.uiui.sn.utils.Utils; import com.trello.rxlifecycle2.LifecycleProvider; import com.trello.rxlifecycle2.LifecycleTransformer; import com.trello.rxlifecycle2.RxLifecycle; @@ -46,7 +46,7 @@ import io.reactivex.Observer; import io.reactivex.disposables.Disposable; import io.reactivex.subjects.BehaviorSubject; -import static com.info.sn.jpush.TagAliasOperatorHelper.ACTION_SET; +import static com.uiui.sn.jpush.TagAliasOperatorHelper.ACTION_SET; /** * @author jgy02 @@ -130,7 +130,7 @@ public class MainService extends Service implements MainContact.MainView, Networ mPresenter.initAmap(); mPresenter.getUserInfo(); HTTPInterface.sendAppUsed(MainService.this); - HTTPInterface.sendRunningApp(MainService.this); +// HTTPInterface.sendRunningApp(MainService.this); HTTPInterface.getAPPinfo(MainService.this); startService(); mPresenter.setAlias(); diff --git a/app/src/main/java/com/info/sn/service/ManagerService.java b/app/src/main/java/com/uiui/sn/service/ManagerService.java similarity index 96% rename from app/src/main/java/com/info/sn/service/ManagerService.java rename to app/src/main/java/com/uiui/sn/service/ManagerService.java index cf8f2ad..f3915f3 100644 --- a/app/src/main/java/com/info/sn/service/ManagerService.java +++ b/app/src/main/java/com/uiui/sn/service/ManagerService.java @@ -1,4 +1,4 @@ -package com.info.sn.service; +package com.uiui.sn.service; import android.app.Service; import android.content.BroadcastReceiver; @@ -10,7 +10,6 @@ import android.graphics.PixelFormat; import android.os.Build; import android.os.Handler; import android.os.IBinder; -import android.os.SystemClock; import android.provider.Settings; import android.text.TextUtils; import android.util.DisplayMetrics; @@ -24,16 +23,16 @@ import android.widget.TextView; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.blankj.utilcode.util.NetworkUtils; -import com.info.sn.R; -import com.info.sn.bean.zuoye.BaseResponse; -import com.info.sn.manager.ControlManager; -import com.info.sn.manager.NetInterfaceManager; -import com.info.sn.network.HTTPInterface; -import com.info.sn.receiver.APKinstallReceiver; -import com.info.sn.receiver.BootReceiver; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.TimeUtils; -import com.info.sn.utils.Utils; +import com.uiui.sn.R; +import com.uiui.sn.bean.zuoye.BaseResponse; +import com.uiui.sn.manager.ControlManager; +import com.uiui.sn.manager.NetInterfaceManager; +import com.uiui.sn.network.HTTPInterface; +import com.uiui.sn.receiver.APKinstallReceiver; +import com.uiui.sn.receiver.BootReceiver; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.TimeUtils; +import com.uiui.sn.utils.Utils; import java.util.concurrent.TimeUnit; @@ -99,8 +98,9 @@ public class ManagerService extends Service implements NetworkUtils.OnNetworkSta public void onNext(Long aLong) { Log.e("TimeObserver", "onNext: " + aLong); Handler.getMain().postDelayed(() -> HTTPInterface.checkUpdate(ManagerService.this), 1234); - Handler.getMain().postDelayed(() -> HTTPInterface.checkUpdate(ManagerService.this, "com.jgyapp.market"), 3456); - Handler.getMain().postDelayed(() -> HTTPInterface.checkUpdate(ManagerService.this, "com.uiuios.updatetools"), 5678); + Handler.getMain().postDelayed(() -> HTTPInterface.checkUpdate(ManagerService.this, "com.uiui.appstore"), 3456); + Handler.getMain().postDelayed(() -> HTTPInterface.checkUpdate(ManagerService.this, "com.uiui.browser"), 5678); + Handler.getMain().postDelayed(() -> HTTPInterface.checkUpdate(ManagerService.this, "com.uiui.os"), 6789); } @Override @@ -491,15 +491,10 @@ public class ManagerService extends Service implements NetworkUtils.OnNetworkSta } IntentFilter filter = new IntentFilter(); filter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); - filter.addAction(Intent.ACTION_BATTERY_CHANGED); - filter.addAction(Intent.ACTION_BATTERY_LOW); - filter.addAction(Intent.ACTION_BATTERY_OKAY); - filter.addAction(Intent.ACTION_POWER_CONNECTED); filter.addAction(Intent.ACTION_POWER_DISCONNECTED); registerReceiver(batteryReceiver, filter); } - private class BatteryReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { diff --git a/app/src/main/java/com/info/sn/service/RemoteService.java b/app/src/main/java/com/uiui/sn/service/RemoteService.java similarity index 88% rename from app/src/main/java/com/info/sn/service/RemoteService.java rename to app/src/main/java/com/uiui/sn/service/RemoteService.java index a36ec15..8395351 100644 --- a/app/src/main/java/com/info/sn/service/RemoteService.java +++ b/app/src/main/java/com/uiui/sn/service/RemoteService.java @@ -1,23 +1,18 @@ -package com.info.sn.service; +package com.uiui.sn.service; import android.app.Service; import android.content.Intent; import android.os.IBinder; import android.os.RemoteException; import android.provider.Settings; -import android.text.TextUtils; import android.util.Log; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.google.gson.JsonObject; -import com.info.sn.IGetInfoInterface; -import com.info.sn.utils.JGYUtils; -import com.info.sn.utils.SPUtils; -import com.info.sn.utils.Utils; +import com.uiui.sn.IGetInfoInterface; +import com.uiui.sn.utils.JGYUtils; +import com.uiui.sn.utils.SPUtils; +import com.uiui.sn.utils.Utils; -import java.util.ArrayList; -import java.util.Arrays; import java.util.List; public class RemoteService extends Service { diff --git a/app/src/main/java/com/info/sn/service/StepService.java b/app/src/main/java/com/uiui/sn/service/StepService.java similarity index 97% rename from app/src/main/java/com/info/sn/service/StepService.java rename to app/src/main/java/com/uiui/sn/service/StepService.java index b7a8fe4..1047627 100644 --- a/app/src/main/java/com/info/sn/service/StepService.java +++ b/app/src/main/java/com/uiui/sn/service/StepService.java @@ -1,4 +1,4 @@ -package com.info.sn.service; +package com.uiui.sn.service; /** * 作者 mjsheng @@ -25,11 +25,11 @@ import androidx.annotation.Nullable; import com.alibaba.fastjson.JSONObject; import com.blankj.utilcode.util.NetworkUtils; -import com.info.sn.BuildConfig; -import com.info.sn.KeepAliveConnection; -import com.info.sn.utils.ServiceAliveUtils; -import com.info.sn.utils.Utils; -import com.info.sn.websocket.JWebSocketClient; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.KeepAliveConnection; +import com.uiui.sn.utils.ServiceAliveUtils; +import com.uiui.sn.utils.Utils; +import com.uiui.sn.websocket.JWebSocketClient; import org.java_websocket.handshake.ServerHandshake; diff --git a/app/src/main/java/com/info/sn/utils/AmapUtils.java b/app/src/main/java/com/uiui/sn/utils/AmapUtils.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/AmapUtils.java rename to app/src/main/java/com/uiui/sn/utils/AmapUtils.java index a370c1a..6157f41 100644 --- a/app/src/main/java/com/info/sn/utils/AmapUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/AmapUtils.java @@ -1,7 +1,7 @@ /** * */ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.content.pm.PackageInfo; diff --git a/app/src/main/java/com/info/sn/utils/ApkUtils.java b/app/src/main/java/com/uiui/sn/utils/ApkUtils.java similarity index 95% rename from app/src/main/java/com/info/sn/utils/ApkUtils.java rename to app/src/main/java/com/uiui/sn/utils/ApkUtils.java index d75fcae..8320eab 100644 --- a/app/src/main/java/com/info/sn/utils/ApkUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/ApkUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.annotation.SuppressLint; import android.app.Activity; @@ -25,9 +25,9 @@ import androidx.annotation.RequiresApi; import androidx.core.content.FileProvider; -import com.info.sn.BuildConfig; -import com.info.sn.R; -import com.info.sn.receiver.InstallResultReceiver; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.R; +import com.uiui.sn.receiver.InstallResultReceiver; import java.io.BufferedReader; import java.io.DataOutputStream; @@ -54,6 +54,29 @@ import java.util.zip.ZipFile; public class ApkUtils { private static String TAG = ApkUtils.class.getSimpleName(); + /** + * 获取第三方应用 + * @param context + * @return + */ + public static List queryFilterAppList(Context context) { + PackageManager pm = context.getPackageManager(); + // 查询所有已经安装的应用程序 + List appInfos = pm.getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES);// GET_UNINSTALLED_PACKAGES代表已删除,但还有安装目录的 + List applicationInfos = new ArrayList<>(); + for (ApplicationInfo app : appInfos) { +// Log.e("queryFilterAppInfo", String.valueOf(app.flags)); +// Log.e("queryFilterAppInfo", String.valueOf((app.flags & mask))); + if ((app.flags & ApplicationInfo.FLAG_SYSTEM) == 1) { + //通过flag排除系统应用,会将电话、短信也排除掉 + } else { + applicationInfos.add(app.packageName); + Log.e("queryFilterAppInfo", app.packageName); + } + } + return applicationInfos; + } + public static synchronized boolean getRootAhth() { Process process = null; DataOutputStream os = null; @@ -113,7 +136,7 @@ public class ApkUtils { if (Build.VERSION.SDK_INT >= 24) { //判读版本是否在7.0以上 //参数1 上下文, 参数2 Provider主机地址 和配置文件中保持一致 参数3 共享的文件 Uri apkUri = - FileProvider.getUriForFile(context, "com.info.sn.fileprovider", uriFile); + FileProvider.getUriForFile(context, "com.uiui.sn.fileprovider", uriFile); //添加这一句表示对目标应用临时授权该Uri所代表的文件 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); intent.setDataAndType(apkUri, "application/vnd.android.package-archive"); @@ -126,6 +149,7 @@ public class ApkUtils { /** * 根据包名卸载应用 + * * @param packageName 包名 */ @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) @@ -352,7 +376,8 @@ public class ApkUtils { /** * 通过路径安装APK,兼容Android 9以上 - * @param context 上下文 + * + * @param context 上下文 * @param filePath apk文件路径 */ public static void installApp(Context context, String filePath) { @@ -583,7 +608,7 @@ public class ApkUtils { String type = "application/vnd.android.package-archive"; Uri uri; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - uri = FileProvider.getUriForFile(activity, "com.info.sn.fileprovider", newApkFile); + uri = FileProvider.getUriForFile(activity, "com.uiui.sn.fileprovider", newApkFile); intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); } else { uri = Uri.fromFile(newApkFile); @@ -599,7 +624,7 @@ public class ApkUtils { String type = "application/vnd.android.package-archive"; Uri uri; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - uri = FileProvider.getUriForFile(context, "com.info.sn.fileprovider", newApkFile); + uri = FileProvider.getUriForFile(context, "com.uiui.sn.fileprovider", newApkFile); intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); } else { uri = Uri.fromFile(newApkFile); @@ -725,18 +750,21 @@ public class ApkUtils { public static void writeAppPackageList(Context context, String result) { addShortcut(context);//开机之后添加图标到桌面 - List factoryAppList = new ArrayList() {{ + HashSet factoryAppList = new HashSet() {{ this.add("com.jiaoguanyi.appstore"); this.add("com.jiaoguanyi.store"); - this.add("com.info.sn"); + this.add("com.uiui.sn"); this.add("com.appstore.uiui"); - this.add("com.jgyapp.market"); + this.add("com.uiui.appstore"); this.add("com.android.uiuios"); this.add("com.uiuios.jgy1"); this.add("com.uiuios.jgy2"); this.add("com.tt.ttutils"); this.add("com.info.chat"); this.add("com.info.learning"); + this.add("com.uiui.browser"); + this.add("com.uiui.os"); + this.add("com.alarmclock.uiui"); }}; HashSet factoryAppSet = new HashSet<>(factoryAppList); if (!TextUtils.isEmpty(result)) { diff --git a/app/src/main/java/com/info/sn/utils/AppUpdateInfo.java b/app/src/main/java/com/uiui/sn/utils/AppUpdateInfo.java similarity index 96% rename from app/src/main/java/com/info/sn/utils/AppUpdateInfo.java rename to app/src/main/java/com/uiui/sn/utils/AppUpdateInfo.java index a9049e9..12e03fe 100644 --- a/app/src/main/java/com/info/sn/utils/AppUpdateInfo.java +++ b/app/src/main/java/com/uiui/sn/utils/AppUpdateInfo.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; /** * Created by Administrator on 2017/1/10. diff --git a/app/src/main/java/com/info/sn/utils/AppsManagerUtils.java b/app/src/main/java/com/uiui/sn/utils/AppsManagerUtils.java similarity index 98% rename from app/src/main/java/com/info/sn/utils/AppsManagerUtils.java rename to app/src/main/java/com/uiui/sn/utils/AppsManagerUtils.java index ba550ae..782a12f 100644 --- a/app/src/main/java/com/info/sn/utils/AppsManagerUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/AppsManagerUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.content.Intent; @@ -8,7 +8,7 @@ import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ResolveInfo; -import com.info.sn.bean.zuoye.LocalAppInfo; +import com.uiui.sn.bean.zuoye.LocalAppInfo; import java.io.File; import java.util.ArrayList; diff --git a/app/src/main/java/com/info/sn/utils/CXAESUtil.java b/app/src/main/java/com/uiui/sn/utils/CXAESUtil.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/CXAESUtil.java rename to app/src/main/java/com/uiui/sn/utils/CXAESUtil.java index fea62d8..745d20a 100644 --- a/app/src/main/java/com/info/sn/utils/CXAESUtil.java +++ b/app/src/main/java/com/uiui/sn/utils/CXAESUtil.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import java.io.File; import java.io.FileInputStream; diff --git a/app/src/main/java/com/info/sn/utils/CacheUtils.java b/app/src/main/java/com/uiui/sn/utils/CacheUtils.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/CacheUtils.java rename to app/src/main/java/com/uiui/sn/utils/CacheUtils.java index 91a4462..ae50cc1 100644 --- a/app/src/main/java/com/info/sn/utils/CacheUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/CacheUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; diff --git a/app/src/main/java/com/info/sn/utils/CmdUtil.java b/app/src/main/java/com/uiui/sn/utils/CmdUtil.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/CmdUtil.java rename to app/src/main/java/com/uiui/sn/utils/CmdUtil.java index 07e8cdd..d7d95a9 100644 --- a/app/src/main/java/com/info/sn/utils/CmdUtil.java +++ b/app/src/main/java/com/uiui/sn/utils/CmdUtil.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.text.TextUtils; import android.util.Log; diff --git a/app/src/main/java/com/info/sn/utils/FileUtils.java b/app/src/main/java/com/uiui/sn/utils/FileUtils.java similarity index 93% rename from app/src/main/java/com/info/sn/utils/FileUtils.java rename to app/src/main/java/com/uiui/sn/utils/FileUtils.java index a75be7c..73b5392 100644 --- a/app/src/main/java/com/info/sn/utils/FileUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/FileUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.os.Environment; @@ -71,7 +71,7 @@ public class FileUtils { } else { Aria.download(context) .load(url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + fileName) + .setFilePath(JGYUtils.getInstance().getDownLoadPath() + fileName) .ignoreFilePathOccupy() .setExtendField(jsonObject.toJSONString()) .create(); //启动下载} @@ -80,7 +80,7 @@ public class FileUtils { } else { Aria.download(context) .load(url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + fileName) + .setFilePath(JGYUtils.getInstance().getDownLoadPath() + fileName) .ignoreFilePathOccupy() .setExtendField(jsonObject.toJSONString()) .create(); //启动下载} diff --git a/app/src/main/java/com/info/sn/utils/ForegroundAppUtil.java b/app/src/main/java/com/uiui/sn/utils/ForegroundAppUtil.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/ForegroundAppUtil.java rename to app/src/main/java/com/uiui/sn/utils/ForegroundAppUtil.java index 8362586..f79b3de 100644 --- a/app/src/main/java/com/info/sn/utils/ForegroundAppUtil.java +++ b/app/src/main/java/com/uiui/sn/utils/ForegroundAppUtil.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.app.ActivityManager; import android.app.usage.UsageStats; diff --git a/app/src/main/java/com/info/sn/utils/Hash.java b/app/src/main/java/com/uiui/sn/utils/Hash.java similarity index 96% rename from app/src/main/java/com/info/sn/utils/Hash.java rename to app/src/main/java/com/uiui/sn/utils/Hash.java index d380fa4..10269bb 100644 --- a/app/src/main/java/com/info/sn/utils/Hash.java +++ b/app/src/main/java/com/uiui/sn/utils/Hash.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; diff --git a/app/src/main/java/com/info/sn/utils/JGYUtils.java b/app/src/main/java/com/uiui/sn/utils/JGYUtils.java similarity index 97% rename from app/src/main/java/com/info/sn/utils/JGYUtils.java rename to app/src/main/java/com/uiui/sn/utils/JGYUtils.java index 9701f69..08ba586 100644 --- a/app/src/main/java/com/info/sn/utils/JGYUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/JGYUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.annotation.SuppressLint; import android.app.ActivityManager; @@ -18,16 +18,19 @@ import android.net.NetworkInfo; import android.net.Uri; import android.os.BatteryManager; import android.os.Build; +import android.os.Environment; import android.os.PowerManager; import android.os.RemoteException; import android.provider.Settings; import android.text.TextUtils; import android.util.Log; -import com.alibaba.fastjson.JSONObject; -import com.info.sn.BuildConfig; -import com.info.sn.service.RemoteService; +import androidx.core.content.ContextCompat; +import com.alibaba.fastjson.JSONObject; +import com.uiui.sn.BuildConfig; + +import java.io.File; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; @@ -38,7 +41,6 @@ import java.util.HashSet; import java.util.LinkedHashSet; import java.util.List; import java.util.Set; -import java.util.function.Predicate; import static android.app.ActivityManager.RECENT_IGNORE_UNAVAILABLE; @@ -152,6 +154,10 @@ public class JGYUtils { } } + public String getDownLoadPath() { + String path = ContextCompat.getExternalFilesDirs(mContext, Environment.DIRECTORY_DOWNLOADS)[0].getAbsolutePath(); + return path + File.separator; + } /** * @param ids 需要管控的ID @@ -576,7 +582,7 @@ public class JGYUtils { return processName; } - public void setDefaultDesktop( String pkg, String className) { + public void setDefaultDesktop(String pkg, String className) { Intent intent = new Intent("setDefaultLauncher"); intent.putExtra("package", pkg); intent.putExtra("className", className); @@ -631,7 +637,7 @@ public class JGYUtils { mContext.sendBroadcast(intent); } - public ArrayList getHideList() { + public ArrayList getHideList() { String appString = (String) SPUtils.get(mContext, "Hide_APP_List", ""); Log.e(TAG, "Hide_APP_List: " + appString); if (TextUtils.isEmpty(appString)) { @@ -643,7 +649,7 @@ public class JGYUtils { private static final String UPDATE_HIDE_APP = "UPDATE_HIDE_APP"; - public void updateHideList() { + public void updateHideList() { Intent intent = new Intent(UPDATE_HIDE_APP); intent.putStringArrayListExtra("hide_app_list", getHideList()); // intent.setComponent(new ComponentName("com.jiaoguanyi.os","com.jiaoguanyi.os.view.MainActivity")); @@ -811,4 +817,10 @@ public class JGYUtils { } Log.e(TAG, "deleteOtherApp: " + "end"); } + + public boolean isScreenOn() { + PowerManager powerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); + //true为打开,false为关闭 + return powerManager.isInteractive(); + } } diff --git a/app/src/main/java/com/info/sn/utils/LaunchTools.java b/app/src/main/java/com/uiui/sn/utils/LaunchTools.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/LaunchTools.java rename to app/src/main/java/com/uiui/sn/utils/LaunchTools.java index 13c5360..1ae159b 100644 --- a/app/src/main/java/com/info/sn/utils/LaunchTools.java +++ b/app/src/main/java/com/uiui/sn/utils/LaunchTools.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.annotation.SuppressLint; import android.content.ActivityNotFoundException; @@ -12,7 +12,7 @@ import android.text.TextUtils; import android.util.Log; -import com.info.sn.config.Scheme; +import com.uiui.sn.config.Scheme; import java.net.NetworkInterface; import java.security.MessageDigest; diff --git a/app/src/main/java/com/info/sn/utils/MD5Util.java b/app/src/main/java/com/uiui/sn/utils/MD5Util.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/MD5Util.java rename to app/src/main/java/com/uiui/sn/utils/MD5Util.java index e37520c..734063f 100644 --- a/app/src/main/java/com/info/sn/utils/MD5Util.java +++ b/app/src/main/java/com/uiui/sn/utils/MD5Util.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.annotation.SuppressLint; diff --git a/app/src/main/java/com/info/sn/utils/SPUtils.java b/app/src/main/java/com/uiui/sn/utils/SPUtils.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/SPUtils.java rename to app/src/main/java/com/uiui/sn/utils/SPUtils.java index 5a3cc51..d2301c7 100644 --- a/app/src/main/java/com/info/sn/utils/SPUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/SPUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.content.SharedPreferences; diff --git a/app/src/main/java/com/info/sn/utils/ServiceAliveUtils.java b/app/src/main/java/com/uiui/sn/utils/ServiceAliveUtils.java similarity index 96% rename from app/src/main/java/com/info/sn/utils/ServiceAliveUtils.java rename to app/src/main/java/com/uiui/sn/utils/ServiceAliveUtils.java index cd5f584..263fea5 100644 --- a/app/src/main/java/com/info/sn/utils/ServiceAliveUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/ServiceAliveUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.app.ActivityManager; import android.content.Context; diff --git a/app/src/main/java/com/info/sn/utils/StatusBarUtil.java b/app/src/main/java/com/uiui/sn/utils/StatusBarUtil.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/StatusBarUtil.java rename to app/src/main/java/com/uiui/sn/utils/StatusBarUtil.java index c7311ab..b3ffdb0 100644 --- a/app/src/main/java/com/info/sn/utils/StatusBarUtil.java +++ b/app/src/main/java/com/uiui/sn/utils/StatusBarUtil.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.app.Activity; import android.content.Context; diff --git a/app/src/main/java/com/info/sn/utils/StorageUtils.java b/app/src/main/java/com/uiui/sn/utils/StorageUtils.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/StorageUtils.java rename to app/src/main/java/com/uiui/sn/utils/StorageUtils.java index 8e91d2a..29f88e8 100644 --- a/app/src/main/java/com/info/sn/utils/StorageUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/StorageUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.os.Build; diff --git a/app/src/main/java/com/info/sn/utils/SystemUtils.java b/app/src/main/java/com/uiui/sn/utils/SystemUtils.java similarity index 96% rename from app/src/main/java/com/info/sn/utils/SystemUtils.java rename to app/src/main/java/com/uiui/sn/utils/SystemUtils.java index 84b02dc..d6aff0a 100644 --- a/app/src/main/java/com/info/sn/utils/SystemUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/SystemUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.app.ActivityManager; import android.content.Context; diff --git a/app/src/main/java/com/info/sn/utils/TimeUtils.java b/app/src/main/java/com/uiui/sn/utils/TimeUtils.java similarity index 99% rename from app/src/main/java/com/info/sn/utils/TimeUtils.java rename to app/src/main/java/com/uiui/sn/utils/TimeUtils.java index 6074159..3c0065b 100644 --- a/app/src/main/java/com/info/sn/utils/TimeUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/TimeUtils.java @@ -1,15 +1,14 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.content.Intent; -import android.nfc.Tag; import android.os.SystemClock; import android.text.TextUtils; import android.util.Log; import androidx.annotation.NonNull; -import com.info.sn.service.ManagerService; +import com.uiui.sn.service.ManagerService; import java.net.DatagramPacket; import java.net.DatagramSocket; diff --git a/app/src/main/java/com/info/sn/utils/ToastUtil.java b/app/src/main/java/com/uiui/sn/utils/ToastUtil.java similarity index 93% rename from app/src/main/java/com/info/sn/utils/ToastUtil.java rename to app/src/main/java/com/uiui/sn/utils/ToastUtil.java index 48cd5c9..b83b633 100644 --- a/app/src/main/java/com/info/sn/utils/ToastUtil.java +++ b/app/src/main/java/com/uiui/sn/utils/ToastUtil.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.graphics.Color; import android.util.Log; @@ -6,8 +6,8 @@ import android.view.Gravity; import com.blankj.utilcode.util.ColorUtils; import com.blankj.utilcode.util.ToastUtils; -import com.info.sn.R; -import com.info.sn.manager.DeviceManager; +import com.uiui.sn.R; +import com.uiui.sn.manager.DeviceManager; public class ToastUtil { private static String TAG = ToastUtil.class.getSimpleName(); diff --git a/app/src/main/java/com/info/sn/utils/URLUtils.java b/app/src/main/java/com/uiui/sn/utils/URLUtils.java similarity index 98% rename from app/src/main/java/com/info/sn/utils/URLUtils.java rename to app/src/main/java/com/uiui/sn/utils/URLUtils.java index 6105ba5..dde1e9f 100644 --- a/app/src/main/java/com/info/sn/utils/URLUtils.java +++ b/app/src/main/java/com/uiui/sn/utils/URLUtils.java @@ -1,4 +1,4 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.content.Context; import android.os.Build; @@ -11,15 +11,11 @@ import androidx.annotation.RequiresApi; import java.io.IOException; import java.net.URI; -import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.concurrent.TimeUnit; -import java.util.function.Function; -import java.util.function.Predicate; import java.util.regex.Matcher; import java.util.regex.Pattern; -import java.util.stream.Collectors; import io.reactivex.Observable; import io.reactivex.ObservableEmitter; @@ -56,8 +52,8 @@ public class URLUtils { if (!TextUtils.isEmpty(oldwhiteList)) { URLList.addAll(Arrays.asList(oldwhiteList.split(","))); } - URLList.add("https://xdf.gankao.com"); - URLList.add("https://www.gankao.com"); +// URLList.add("https://xdf.gankao.com"); +// URLList.add("https://www.gankao.com"); if (!TextUtils.isEmpty(oldHomePage) && !URLList.contains(oldHomePage)) { URLList.add(oldHomePage); } diff --git a/app/src/main/java/com/info/sn/utils/Utils.java b/app/src/main/java/com/uiui/sn/utils/Utils.java similarity index 96% rename from app/src/main/java/com/info/sn/utils/Utils.java rename to app/src/main/java/com/uiui/sn/utils/Utils.java index 981d4e8..b425fe3 100644 --- a/app/src/main/java/com/info/sn/utils/Utils.java +++ b/app/src/main/java/com/uiui/sn/utils/Utils.java @@ -1,9 +1,8 @@ -package com.info.sn.utils; +package com.uiui.sn.utils; import android.annotation.SuppressLint; import android.app.ActivityManager; import android.app.admin.DevicePolicyManager; -import android.bluetooth.BluetoothAdapter; import android.content.ActivityNotFoundException; import android.content.ComponentName; import android.content.Context; @@ -55,12 +54,11 @@ import com.google.zxing.WriterException; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.QRCodeWriter; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; -import com.info.sn.R; -import com.info.sn.Statistics.AppInformation; -import com.info.sn.Statistics.StatisticsInfo; -import com.info.sn.bean.zuoye.AppUsed; -import com.info.sn.bean.zuoye.SystemSettings; -import com.info.sn.manager.DeviceManager; +import com.uiui.sn.BuildConfig; +import com.uiui.sn.R; +import com.uiui.sn.Statistics.AppInformation; +import com.uiui.sn.Statistics.StatisticsInfo; +import com.uiui.sn.bean.zuoye.AppUsed; import java.io.BufferedReader; import java.io.File; @@ -86,7 +84,6 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; -import java.util.function.Predicate; import java.util.regex.Pattern; import static android.content.Context.WIFI_SERVICE; @@ -760,7 +757,7 @@ public class Utils { for (int y = 0; y < heightPix; y++) { for (int x = 0; x < widthPix; x++) { if (bitMatrix.get(x, y)) { - pixels[y * widthPix + x] = 0xff000000; + pixels[y * widthPix + x] = 0xff0480ff; } else { pixels[y * widthPix + x] = 0xffffffff; } @@ -1184,7 +1181,7 @@ public class Utils { Log.e(TAG, "getHardware: storage = " + storage); double use_space = getUse_space(context); Log.e(TAG, "getHardware: use_space = " + use_space); - long wifi_time = (long) com.info.sn.utils.SPUtils.get(context, "wifi_last_connect_time", 0L) / 1000; + long wifi_time = (long) com.uiui.sn.utils.SPUtils.get(context, "wifi_last_connect_time", 0L) / 1000; Log.e(TAG, "getHardware: wifi_time" + wifi_time); int CPU = getNumCores(); JSONObject jsonObject = new JSONObject(); @@ -1232,5 +1229,36 @@ public class Utils { return jsonString; } + public static void killBackgroundApp(Context context) { + List pkgList = ApkUtils.queryFilterAppList(context); + for (String pkg : pkgList) { + if (runningAppWhitelist.contains(pkg)) continue; + killBackgroundProcesses(context, pkg); + } + } + public static List runningAppWhitelist = new ArrayList() {{ + this.add("com.android.launcher3"); + this.add(BuildConfig.APPLICATION_ID); + this.add("com.uiui.appstore"); + this.add("com.uiui.os"); + this.add("com.uiui.browser"); + }}; + + + public static void killBackgroundProcesses(Context context, String packageName) { + ActivityManager activityManager; + try { + activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); + activityManager.killBackgroundProcesses(packageName); + Method forceStopPackage = activityManager.getClass() + .getDeclaredMethod("forceStopPackage", String.class); +// Log.e(TAG, "killBackgroundProcesses: " + packageName); + forceStopPackage.setAccessible(true); + forceStopPackage.invoke(activityManager, packageName); + } catch (Exception e) { + Log.e(TAG, "killBackgroundProcesses: " + e.getMessage()); + e.printStackTrace(); + } + } } \ No newline at end of file diff --git a/app/src/main/java/com/info/sn/view/FlowRadioGroup.java b/app/src/main/java/com/uiui/sn/view/FlowRadioGroup.java similarity index 98% rename from app/src/main/java/com/info/sn/view/FlowRadioGroup.java rename to app/src/main/java/com/uiui/sn/view/FlowRadioGroup.java index f42b357..7c499f7 100644 --- a/app/src/main/java/com/info/sn/view/FlowRadioGroup.java +++ b/app/src/main/java/com/uiui/sn/view/FlowRadioGroup.java @@ -1,4 +1,4 @@ -package com.info.sn.view; +package com.uiui.sn.view; import android.content.Context; import android.util.AttributeSet; diff --git a/app/src/main/java/com/info/sn/websocket/JWebSocketClient.java b/app/src/main/java/com/uiui/sn/websocket/JWebSocketClient.java similarity index 96% rename from app/src/main/java/com/info/sn/websocket/JWebSocketClient.java rename to app/src/main/java/com/uiui/sn/websocket/JWebSocketClient.java index 5b7e72f..cbbc9a9 100644 --- a/app/src/main/java/com/info/sn/websocket/JWebSocketClient.java +++ b/app/src/main/java/com/uiui/sn/websocket/JWebSocketClient.java @@ -1,4 +1,4 @@ -package com.info.sn.websocket; +package com.uiui.sn.websocket; import android.util.Log; diff --git a/app/src/main/res/drawable-hdpi/applet_qrcode.png b/app/src/main/res/drawable-hdpi/applet_qrcode.png index 672ffa5..b9cebba 100644 Binary files a/app/src/main/res/drawable-hdpi/applet_qrcode.png and b/app/src/main/res/drawable-hdpi/applet_qrcode.png differ diff --git a/app/src/main/res/drawable-hdpi/bind_applet.png b/app/src/main/res/drawable-hdpi/bind_applet.png new file mode 100644 index 0000000..d9c1730 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/bind_applet.png differ diff --git a/app/src/main/res/drawable-hdpi/bt_return.png b/app/src/main/res/drawable-hdpi/bt_return.png index eb8e004..c915cbb 100644 Binary files a/app/src/main/res/drawable-hdpi/bt_return.png and b/app/src/main/res/drawable-hdpi/bt_return.png differ diff --git a/app/src/main/res/drawable/qrcode_shape.xml b/app/src/main/res/drawable/qrcode_shape.xml new file mode 100644 index 0000000..4368d20 --- /dev/null +++ b/app/src/main/res/drawable/qrcode_shape.xml @@ -0,0 +1,18 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout-land/activity_main.xml b/app/src/main/res/layout-land/activity_main.xml index c1740c8..b8fe08d 100644 --- a/app/src/main/res/layout-land/activity_main.xml +++ b/app/src/main/res/layout-land/activity_main.xml @@ -11,7 +11,7 @@ @@ -46,7 +46,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" - android:text="教管壹 云管控·AI学习机" + android:text="我的设备" android:textColor="#4b4b4b" android:textSize="24sp" android:textStyle="bold" @@ -54,564 +54,98 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -