From b117888f87915914069ff180be96990bd56d6ed0 Mon Sep 17 00:00:00 2001 From: Fanhuitong <981964879@qq.com> Date: Fri, 15 Dec 2023 09:38:33 +0800 Subject: [PATCH] =?UTF-8?q?version:1.2.1=20fix:=20update:=E5=87=86?= =?UTF-8?q?=E5=A4=87=E5=88=86=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 101 +++++++++++++++++- iconloaderlib/build.gradle | 8 ++ keystore/Aigo1071.jks | Bin 0 -> 2699 bytes {src/doc => keystore}/AllwinnerU807.jks | Bin keystore/G10PMTK11.jks | Bin 0 -> 2352 bytes keystore/TeclastMTK12.jks | Bin 0 -> 2553 bytes keystore/UnisocS6688Userdebug.jks | Bin 0 -> 2947 bytes {src/doc => keystore}/iPlay50SE.keystore | Bin niceimageview/build.gradle | 8 ++ src/com/uiuipad/os/alarm/AlarmActivity.java | 15 +++ src/com/uiuipad/os/icons/IconCache.java | 2 + .../uiuipad/os/manager/RunningAppManager.java | 16 ++- .../os/manager/TimeControlManager.java | 6 +- .../uiuipad/os/manager/bean/ClassConfig.java | 36 +++++++ src/com/uiuipad/os/model/LoaderTask.java | 19 ++-- src/com/uiuipad/os/service/MainService.java | 17 ++- src/com/uiuipad/os/uiuiutils/Utils.java | 7 ++ 17 files changed, 218 insertions(+), 17 deletions(-) create mode 100644 keystore/Aigo1071.jks rename {src/doc => keystore}/AllwinnerU807.jks (100%) create mode 100644 keystore/G10PMTK11.jks create mode 100644 keystore/TeclastMTK12.jks create mode 100644 keystore/UnisocS6688Userdebug.jks rename {src/doc => keystore}/iPlay50SE.keystore (100%) create mode 100644 src/com/uiuipad/os/manager/bean/ClassConfig.java diff --git a/build.gradle b/build.gradle index 25db9c2..bc59da4 100644 --- a/build.gradle +++ b/build.gradle @@ -27,7 +27,7 @@ def appName() { } def releaseTime() { - return new Date().format("yyyyMMdd", TimeZone.getDefault()) + return new Date().format("yyyyMMdd_HHmmss", TimeZone.getDefault()) } final String ANDROID_TOP = "${rootDir}" @@ -50,8 +50,8 @@ android { minSdkVersion 26 targetSdkVersion 28 - versionCode 17 - versionName "1.1.6" + versionCode 22 + versionName "1.2.1" ndk { //选择要添加的对应 cpu 类型的 .so 库。 @@ -70,8 +70,17 @@ android { //签名 signingConfigs { + G10P { + storeFile file("keystore/G10PMTK11.jks") + storePassword "123456" + keyAlias "G10PMTK11" + keyPassword "123456" + v1SigningEnabled true + v2SigningEnabled true + } + U807 { - storeFile file("src/doc/AllwinnerU807.jks") + storeFile file("keystore/AllwinnerU807.jks") storePassword "123456" keyAlias "u807" keyPassword "123456" @@ -79,16 +88,98 @@ android { } iPlay50SE { - storeFile file("src/doc/iPlay50SE.keystore") + storeFile file("keystore/iPlay50SE.keystore") storePassword "123456" keyAlias "iplay50se" keyPassword "123456" v1SigningEnabled true v2SigningEnabled true } + + teclast8183 { + storeFile file("keystore/TeclastMTK12.jks") + storePassword "123456" + keyAlias "TeclastMTK12" + keyPassword "123456" + v2SigningEnabled false + } + + UnisocS6688 { + storeFile file("keystore/UnisocS6688Userdebug.jks") + storePassword "123456" + keyAlias "unisocs6688userdebug" + keyPassword "123456" + v1SigningEnabled true + v2SigningEnabled true + } + + Aigo1071 { + storeFile file("keystore/Aigo1071.jks") + storePassword "123456" + keyAlias "aigo1071" + keyPassword "123456" + v1SigningEnabled true + v2SigningEnabled true + } } buildTypes { + Aigo1071Debug.initWith(debug) + Aigo1071Debug { + versionNameSuffix "-debug" + debuggable true + signingConfig signingConfigs.Aigo1071 + buildConfigField "String", "platform", '"W8183"' + } + + Aigo1071Release.initWith(release) + Aigo1071Release { + signingConfig signingConfigs.Aigo1071 + buildConfigField "String", "platform", '"W8183"' + } + + UnisocS6688Debug.initWith(debug) + UnisocS6688Debug { + versionNameSuffix "-debug" + debuggable true + signingConfig signingConfigs.UnisocS6688 + buildConfigField "String", "platform", '"S6688"' + } + + UnisocS6688Release.initWith(release) + UnisocS6688Release { + signingConfig signingConfigs.UnisocS6688 + buildConfigField "String", "platform", '"S6688"' + } + + teclast8183Debug.initWith(debug) + teclast8183Debug { + versionNameSuffix "-debug" + debuggable true + signingConfig signingConfigs.teclast8183 + buildConfigField "String", "platform", '"A11MTK8183"' + } + + teclast8183Release.initWith(release) + teclast8183Release { + signingConfig signingConfigs.teclast8183 + buildConfigField "String", "platform", '"A11MTK8183"' + } + + G10PDebug.initWith(debug) + G10PDebug { + versionNameSuffix "-debug" + debuggable true + signingConfig signingConfigs.G10P + buildConfigField "String", "platform", '"G10P"' + } + + G10PRelease.initWith(release) + G10PRelease { + signingConfig signingConfigs.G10P + buildConfigField "String", "platform", '"G10P"' + } + U807Debug.initWith(debug) U807Debug { buildConfigField "String", "platform", '"U807"' diff --git a/iconloaderlib/build.gradle b/iconloaderlib/build.gradle index 479ceba..22af0ac 100644 --- a/iconloaderlib/build.gradle +++ b/iconloaderlib/build.gradle @@ -13,6 +13,14 @@ android { } buildTypes { + Aigo1071Debug {} + Aigo1071Release {} + UnisocS6688Debug {} + UnisocS6688Release {} + teclast8183Debug {} + teclast8183Release {} + G10PDebug {} + G10PRelease {} U807Debug {} U807Release {} iPlay50SEDebug {} diff --git a/keystore/Aigo1071.jks b/keystore/Aigo1071.jks new file mode 100644 index 0000000000000000000000000000000000000000..c32bd7a86123d9dbe23198b808b1ea52035a85ba GIT binary patch literal 2699 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 s0IE&$WB>pF literal 0 HcmV?d00001 diff --git a/src/doc/AllwinnerU807.jks b/keystore/AllwinnerU807.jks similarity index 100% rename from src/doc/AllwinnerU807.jks rename to keystore/AllwinnerU807.jks diff --git a/keystore/G10PMTK11.jks b/keystore/G10PMTK11.jks new file mode 100644 index 0000000000000000000000000000000000000000..324fa3165901bfe56095885d02ba319749535507 GIT binary patch literal 2352 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 literal 0 HcmV?d00001 diff --git a/keystore/UnisocS6688Userdebug.jks b/keystore/UnisocS6688Userdebug.jks new file mode 100644 index 0000000000000000000000000000000000000000..07f2a13416ff32f8c6e23982b542de26ecc88c75 GIT binary patch literal 2947 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 literal 0 HcmV?d00001 diff --git a/src/doc/iPlay50SE.keystore b/keystore/iPlay50SE.keystore similarity index 100% rename from src/doc/iPlay50SE.keystore rename to keystore/iPlay50SE.keystore diff --git a/niceimageview/build.gradle b/niceimageview/build.gradle index d1ae292..94c3f9a 100644 --- a/niceimageview/build.gradle +++ b/niceimageview/build.gradle @@ -11,6 +11,14 @@ android { } buildTypes { + Aigo1071Debug {} + Aigo1071Release {} + UnisocS6688Debug {} + UnisocS6688Release {} + teclast8183Debug {} + teclast8183Release {} + G10PDebug {} + G10PRelease {} U807Debug {} U807Release {} iPlay50SEDebug {} diff --git a/src/com/uiuipad/os/alarm/AlarmActivity.java b/src/com/uiuipad/os/alarm/AlarmActivity.java index 0466fba..4346aed 100644 --- a/src/com/uiuipad/os/alarm/AlarmActivity.java +++ b/src/com/uiuipad/os/alarm/AlarmActivity.java @@ -20,6 +20,7 @@ import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; +import cn.jzvd.Jzvd; import io.reactivex.rxjava3.core.Observer; import io.reactivex.rxjava3.disposables.Disposable; @@ -252,4 +253,18 @@ public class AlarmActivity extends BaseActivity implements AlarmContact.AlarmVie rv_data.setVisibility(View.VISIBLE); } } + + @Override + public void onBackPressed() { + if (Jzvd.backPress()) { + return; + } + super.onBackPressed(); + } + + @Override + protected void onPause() { + super.onPause(); + Jzvd.releaseAllVideos(); + } } diff --git a/src/com/uiuipad/os/icons/IconCache.java b/src/com/uiuipad/os/icons/IconCache.java index f9e6855..44c67d2 100644 --- a/src/com/uiuipad/os/icons/IconCache.java +++ b/src/com/uiuipad/os/icons/IconCache.java @@ -250,6 +250,7 @@ public class IconCache extends BaseIconCache { this.add("com.android.gallery3d.app.GalleryActivity");//图库 this.add("com.google.android.apps.photos.home.HomeActivity");//图库 this.add("com.android.messaging.ui.conversationlist.ConversationListActivity");//信息 + this.add("com.android.mms.ui.BootActivity");//信息 this.add("com.android.music.MusicBrowserActivity");//音乐 this.add("com.android.providers.downloads.ui.DownloadList");//下载 this.add("com.android.quicksearchbox.SearchActivity");//搜索 @@ -289,6 +290,7 @@ public class IconCache extends BaseIconCache { this.add("com_android_gallery3d_app"); this.add("com_android_gallery3d_app"); this.add("com_android_mms_ui"); + this.add("com_android_mms_ui"); this.add("com_android_music"); this.add("com_android_providers_downloads_ui"); this.add("com_android_quicksearchbox"); diff --git a/src/com/uiuipad/os/manager/RunningAppManager.java b/src/com/uiuipad/os/manager/RunningAppManager.java index 299d283..75b86e0 100644 --- a/src/com/uiuipad/os/manager/RunningAppManager.java +++ b/src/com/uiuipad/os/manager/RunningAppManager.java @@ -671,6 +671,18 @@ public class RunningAppManager { this.add("com.uiui.appstore"); this.add("com.uiui.browser"); this.add("com.uiui.aios"); + + this.add("com.uiuipad.find"); + this.add("com.uiuipad.os"); + this.add("com.uiuipad.browser"); + this.add("com.uiuipad.store"); + this.add("com.uiuipad.zyinfo"); + this.add("com.aole.safe"); + this.add("com.aole.aios"); + this.add("com.aole.store"); + this.add("com.safeos.ae"); + this.add("com.dangsafe.kf"); + }}; /** @@ -1019,7 +1031,7 @@ public class RunningAppManager { // if (machineControl.getIs_part() == 1) { // int partType = machineControl.getPart_type(); if (machineControl.getTime_part() != null && machineControl.getTime_part().size() != 0) { - int partType = 1; + int partType = 0; HashSet weekdayPart = machineControl.getTime_part().stream().filter(partTime -> partTime.getDay_type() == 0).collect(Collectors.toCollection(HashSet::new)); HashSet holidayPart = machineControl.getTime_part().stream().filter(partTime -> partTime.getDay_type() == 1).collect(Collectors.toCollection(HashSet::new)); //工作日 @@ -1080,7 +1092,7 @@ public class RunningAppManager { // if (appTimeControl.getIs_part() == 1) { // int partType = appTimeControl.getPart_type(); if (appTimeControl.getTime_part() != null && appTimeControl.getTime_part().size() != 0) { - int partType = 1; + int partType = 0; HashMap> partTimeMap = new HashMap(); HashSet weekdayPart = new HashSet(appTimeControl.getTime_part().stream().filter(partTime -> partTime.getDay_type() == 0).collect(Collectors.toList())); HashSet holidayPart = new HashSet(appTimeControl.getTime_part().stream().filter(partTime -> partTime.getDay_type() == 1).collect(Collectors.toList())); diff --git a/src/com/uiuipad/os/manager/TimeControlManager.java b/src/com/uiuipad/os/manager/TimeControlManager.java index 8961c87..809e186 100644 --- a/src/com/uiuipad/os/manager/TimeControlManager.java +++ b/src/com/uiuipad/os/manager/TimeControlManager.java @@ -27,8 +27,9 @@ public class TimeControlManager { private static TimeControlManager mTimeControlManager; private Context mContext; private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); - + /*app为分类的分类配置*/ private HashMap mClassifyTimeControlHashMap = new HashMap<>(); + /*分类的所有包名列表*/ private HashMap mAppTimeControlMap = new HashMap<>(); /*整机分类*/ @@ -166,7 +167,7 @@ public class TimeControlManager { /** - * 设置app的配置 + * 设置app管控时间的配置 * * @param appTimeControlList */ @@ -174,6 +175,7 @@ public class TimeControlManager { if (appTimeControlList == null || appTimeControlList.size() == 0) { return; } + HashMap classifyTimeControlHashMap = new HashMap<>(); List filterAppTimeControlList = appTimeControlList.stream().filter(appTimeControl -> { //tc_use_type == 1 时用的是分类配置,配置都是一样的 diff --git a/src/com/uiuipad/os/manager/bean/ClassConfig.java b/src/com/uiuipad/os/manager/bean/ClassConfig.java new file mode 100644 index 0000000..7a60a78 --- /dev/null +++ b/src/com/uiuipad/os/manager/bean/ClassConfig.java @@ -0,0 +1,36 @@ +package com.uiuipad.os.manager.bean; + +import java.io.Serializable; +import java.util.List; + +public class ClassConfig implements Serializable { + private static final long serialVersionUID = 3113893274162914847L; + + List pkgs; + int id; + long time; + + public List getPkgs() { + return pkgs; + } + + public void setPkgs(List pkgs) { + this.pkgs = pkgs; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public long getTime() { + return time; + } + + public void setTime(long time) { + this.time = time; + } +} diff --git a/src/com/uiuipad/os/model/LoaderTask.java b/src/com/uiuipad/os/model/LoaderTask.java index 2198eea..62dd936 100644 --- a/src/com/uiuipad/os/model/LoaderTask.java +++ b/src/com/uiuipad/os/model/LoaderTask.java @@ -255,15 +255,22 @@ public class LoaderTask implements Runnable { * 需要隐藏的图标 */ private HashSet hideApp = new HashSet() {{ - this.add(BuildConfig.APPLICATION_ID); this.add("com.android.quicksearchbox"); this.add("com.st.nfc.dta.mobile"); this.add("com.mediatek.ygps"); this.add("com.mediatek.factorymode"); this.add("org.chromium.browser"); this.add("com.android.email"); + this.add("com.uiui.sn"); + this.add("com.uiui.zy"); + this.add("com.ygyb.yischool"); + this.add("com.cube.setlauncherdef"); + this.add("com.iflytek.speechcloud"); + this.add("com.oirsdfg89.flg"); + this.add("com.android.browser"); }}; + /** * 系统应用只显示这几个 */ @@ -316,12 +323,10 @@ public class LoaderTask implements Runnable { for (LauncherActivityInfo app : apps) { Log.e("verifyApplications", "AllAPP: pkg = " + app.getApplicationInfo().packageName); Log.e("verifyApplications", "AllAPP: className = " + app.getComponentName().getClassName()); - if ("com.ygyb.yischool".equals(app.getApplicationInfo().packageName) - || "com.cube.setlauncherdef".equals(app.getApplicationInfo().packageName) - || "com.iflytek.speechcloud".equals(app.getApplicationInfo().packageName) - || "com.oirsdfg89.flg".equals(app.getApplicationInfo().packageName) - || "com.uiuipad.os.Launcher".equals(app.getComponentName().getClassName()) - ) + if (hideApp.contains(app.getApplicationInfo().packageName)) { + continue; + } + if ("com.uiuipad.os.Launcher".equals(app.getComponentName().getClassName())) continue; if (is_control == 1) { if ("org.chromium.chrome".equals(app.getApplicationInfo().packageName) diff --git a/src/com/uiuipad/os/service/MainService.java b/src/com/uiuipad/os/service/MainService.java index 03bce9a..9647956 100644 --- a/src/com/uiuipad/os/service/MainService.java +++ b/src/com/uiuipad/os/service/MainService.java @@ -23,6 +23,7 @@ import com.uiuipad.os.uiuiutils.ApkUtils; import com.arialyy.annotations.Download; import com.arialyy.aria.core.Aria; import com.arialyy.aria.core.task.DownloadTask; +import com.uiuipad.os.uiuiutils.Utils; import org.jetbrains.annotations.NotNull; @@ -32,7 +33,7 @@ import java.util.HashMap; import io.reactivex.rxjava3.core.Observable; import io.reactivex.rxjava3.subjects.BehaviorSubject; -public class MainService extends Service implements MainSContact.MainView, LifecycleProvider { +public class MainService extends Service implements MainSContact.MainView, LifecycleProvider, NetworkUtils.OnNetworkStatusChangedListener { private String TAG = MainService.class.getSimpleName(); public static final String ALARMWAKEUP = "KUXIN_ALARM_WAKEUP"; @@ -64,6 +65,19 @@ public class MainService extends Service implements MainSContact.MainView, Lifec return RxLifecycleAndroid.bindActivity(lifecycleSubject); } + @Override + public void onDisconnected() { + Log.e(TAG, "网络未连接"); + } + + @Override + public void onConnected(NetworkUtils.NetworkType networkType) { + Log.e(TAG, "onConnected: 网络已连接"); + if (Utils.isScreenOn(MainService.this)) { + mPresenter.getTimeManageSn(); + } + } + @Override public IBinder onBind(Intent intent) { return mMainBinder; @@ -83,6 +97,7 @@ public class MainService extends Service implements MainSContact.MainView, Lifec Log.e(TAG, "onCreate: "); registerReceivers(); Aria.download(this).register(); + NetworkUtils.registerNetworkStatusChangedListener(this); lifecycleSubject.onNext(ActivityEvent.CREATE); mPresenter = new MainSPresenter(this); diff --git a/src/com/uiuipad/os/uiuiutils/Utils.java b/src/com/uiuipad/os/uiuiutils/Utils.java index db22af5..b2fcb09 100644 --- a/src/com/uiuipad/os/uiuiutils/Utils.java +++ b/src/com/uiuipad/os/uiuiutils/Utils.java @@ -11,6 +11,7 @@ import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.os.Build; import android.os.Environment; +import android.os.PowerManager; import android.os.RemoteException; import android.telephony.TelephonyManager; import android.text.TextUtils; @@ -368,4 +369,10 @@ public class Utils { int position = url.lastIndexOf("/"); return url.substring(position + 1); } + + public static boolean isScreenOn(Context context) { + PowerManager powerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE); + //true为打开,false为关闭 + return powerManager.isInteractive(); + } }