From bb47a13d44a1b299e2f6e2e7e23f59066446e82c Mon Sep 17 00:00:00 2001 From: tongtongstudio Date: Wed, 13 Nov 2024 16:47:16 +0800 Subject: [PATCH] =?UTF-8?q?version:1.3.8=20fix:=20update:=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E4=B8=8D=E8=83=BD=E8=87=AA=E5=8A=A8=E6=8E=A5=E5=90=AC?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E6=A1=8C=E9=9D=A2=E5=9C=B0=E5=9D=80?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E5=BC=80=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FlycoTabLayoutZ_Lib/build.gradle | 2 + app/build.gradle | 43 ++++++++-- app/keystore/KTouchMTK.keystore | Bin 0 -> 2550 bytes app/keystore/T40Air.jks | Bin 0 -> 2354 bytes .../activity/emergency/EmergencyActivity.java | 2 +- .../xxpatx/os/activity/main/MainActivity.java | 5 +- .../com/xxpatx/os/bean/SystemSettings.java | 9 +++ .../com/xxpatx/os/config/CommonConfig.java | 7 ++ .../fragment/settings/SettingsFragment.java | 74 +++++++++++++---- .../fragment/settings/SettingsViewModel.java | 43 ++++++++++ .../xxpatx/os/manager/AppStatusManager.java | 10 ++- .../os/network/NetInterfaceManager.java | 49 ++---------- .../com/xxpatx/os/network/UrlAddress.java | 9 +-- .../os/network/api/amap/GeocodingApi.java | 17 ---- .../os/service/WeAccessibilityService.java | 1 + .../xxpatx/os/service/main/MainService.java | 30 ++++++- .../main/java/com/xxpatx/os/utils/Utils.java | 28 ++++++- app/src/main/res/layout/fragment_settings.xml | 75 ++++++++++++------ niceimageview/build.gradle | 2 + verification-view/build.gradle | 2 + 20 files changed, 285 insertions(+), 123 deletions(-) create mode 100644 app/keystore/KTouchMTK.keystore create mode 100644 app/keystore/T40Air.jks delete mode 100644 app/src/main/java/com/xxpatx/os/network/api/amap/GeocodingApi.java diff --git a/FlycoTabLayoutZ_Lib/build.gradle b/FlycoTabLayoutZ_Lib/build.gradle index e21b40c..3c6ae3c 100644 --- a/FlycoTabLayoutZ_Lib/build.gradle +++ b/FlycoTabLayoutZ_Lib/build.gradle @@ -13,6 +13,8 @@ android { versionName version } buildTypes { + M50T60Debug {} + M50T60Release {} U807Debug {} U807Release {} iPlay50SEDebug {} diff --git a/app/build.gradle b/app/build.gradle index bf5e84c..c0c0b01 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -15,8 +15,8 @@ android { applicationId "com.xxpatx.os" minSdkVersion 24 targetSdkVersion 29 - versionCode 1037 - versionName "1.3.6" + versionCode 1039 + versionName "1.3.8" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" @@ -26,9 +26,7 @@ android { // 还可以添加 'armeabi', 'armeabi-v7a', 'x86', 'x86_64', 'mips', 'mips64' } - manifestPlaceholders = [ - AMAP_KEY: "963a156c0e1b525856d9b1d304666fe9" - ] + } dataBinding { @@ -68,10 +66,42 @@ android { v1SigningEnabled true v2SigningEnabled true } + + M50T60 { + storeFile file("keystore/T40Air.jks") + storePassword "123456" + keyAlias "T40Air" + keyPassword "123456" + v1SigningEnabled true + v2SigningEnabled true + } } buildTypes { + M50T60Debug.initWith(debug) + M50T60Debug { + manifestPlaceholders = [ + AMAP_KEY: "aa85f12a2b0060a687c1755e08161875" + ] + buildConfigField "String", "platform", '"TD606"' + versionNameSuffix "-debug" + debuggable true + signingConfig signingConfigs.M50T60 + } + + M50T60Release.initWith(release) + M50T60Release { + manifestPlaceholders = [ + AMAP_KEY: "aa85f12a2b0060a687c1755e08161875" + ] + buildConfigField "String", "platform", '"TD606"' + signingConfig signingConfigs.M50T60 + } + debug { + manifestPlaceholders = [ + AMAP_KEY: "963a156c0e1b525856d9b1d304666fe9" + ] buildConfigField "String", "platform", '"MTK01"' versionNameSuffix "-debug" //Zipalign优化 @@ -94,6 +124,9 @@ android { } release { + manifestPlaceholders = [ + AMAP_KEY: "963a156c0e1b525856d9b1d304666fe9" + ] buildConfigField "String", "platform", '"MTK01"' //Zipalign优化 zipAlignEnabled true diff --git a/app/keystore/KTouchMTK.keystore b/app/keystore/KTouchMTK.keystore new file mode 100644 index 0000000000000000000000000000000000000000..30b39dae8a620b336401cd187f00fa038c8676a2 GIT binary patch literal 2550 zcmd6o`9IYA9>?c9Ge$EE)l4SYmnbs6W5!OjkTttBQKRCTn2{|VoW_h8OC$*)ODIB; zC5`(nJ7oKm)o307M{g7W|z*y<#@y z>VO~iERs{%9F{ESXze#hWHf=HXYt!tmjac}OHJ)_eXVsYR?Lie7O{}CjG9+Reg3D{ zjjXkOc~59xd}XBOHuc|_bAv#O*wVg98j|vte0mL!Z@Q=2C0XO}n(;CI;hn>e7fX*e zY8hq};^kC7Ano=9sf!qfhV_pwL_`$C#O{v8Yv!;yo`N0{O}?@D#llka*qD=hi~j7n z4ij~9*m3L9Fho;@3zd9=bJHrrPMqc!C?A*Y(RH^^O;5qGv~JAeAOhUeqX9E*UYppn z%418pm}!q1Ww;5np3*aM;RG`ou%=T}ciZC5u~j2eV4DKTj1OMv9Vn#Sc5oi{wha2# z+Lw|u=F7hNS;nN6NrXnw%R^w5lz^i_ZXUYW#G7U57w<*!lIYel;nEUGB~=8qbOX$* ztspjVry!SS)#>9q4nMgxpPFzjC3fxb%n`8+9Bt-VybkVhb|vPrv*OHJjOLfTzB!ZK zZ6E6iD>)nCuGrb)v-yJT&vl8UgN@q=y-pv4J6uNMDTPpl@yN!JnqyElwPpYn+1Xhp zJBdcllud2M?RnNJVLHNXceqxmKp`phbp}P4EEYAV!x%Xy!ycExE`0yGq|&l)eLhQH=HSaxK<>OJmEuktlgxFxFL^&3pzr%Rr`b2u-P*aqP_AiiDsl}C8JHv2h zR>%7Ez51xAVYl1A@w`4R9;m%evC-769rs{9&^4QAqEhdC1Q*`~ih?3wLrTIC{4&kf zzD}|L`OEp2vtVQXc1cCLZ=8hZWXPOOK&qk7yo8;+@nJ_maX2W}iRFfb{YaQwB3Mk75jqPfhD=^35FP{;-4gvO2H#sfl zv+Z5CQ?%Cm_f*%e$&MU)eo_9ARQ1sEt`o%yACgAbTp~5?o20$Au}v!-1vV!*`tduq z56_i_&Odr6<}YqKr_ax_!4+j?-8OHwQWH;Jnqp2=P%3d__C9M3-N~}rlloWY0O!_Q zdOIhml9Tow`tqSqqJzyhi~q(UpZ1I?etsZ5SVPwI_kohkz9R~e%Q9I55DV$O>UR*F z81}Cz6>2P$yMI!7Vatp4xBu8=>N!JdRUH9*wNo06^t#zxrFg_zOs(|9g>r?WPsi66 z4EByW)G=t3V?^7R=8LbveKIzsso%(I7Yr?oGXfNxNbef*aJ1(I2UiwKhu10MVP#hB zd6%a%+q)MSZu0cKgZJk&^9(9Z*QZWRto1;?Sso={Szg2*y=5#X%{++^CH7jyWm);l zTV_{rgYqTK_^-}%pjx>$+vMFKm|`OTJYA>ikpA+UNxv5s0|JegJ}2|3^=5OlL3_`0 zctS_bA#(Aul%7Zkw&lLF1TM~~Xd^cgcAP<$VA40=Kb6LWirN{RS)1ZSf!7AY#{l$K zN>;k}hDU9ZEE?%7NGd^0}DqGj0K>DvkBM)WdQ&r_q<421=`C%_Vpc~51qFl zbUiC^TCixf;+7W2IHU5ZIxk4}M3Cj+Cq?Dxju-ZkqiU+giO~USHMW>AmEtr%Wo!5t zV7)gA#oZy&8M=}Ki===zQbYUqM^E}!YOqOq(oXZM8dh4!`|xV^@vRkEZFj;={U8tL zH)d!aEyM3dq}Gcl$XxwW(ya;JgZf$~v~)Wuy@DT9Rg&A2%|177N*J5?}BlYUum})2eQ1M)|o}CA@oE zhd1|$_7L&4^HbEDcx(?JWlY|2z*5AXl`qGt)l{@&*OZN3>;VWqUUNY`V?zb{rHf9HMxG~s!Y1lIZtbu;BS6!qDMzP+Mzc{QAs+N zruVLtR=W{--`*!QpRpRZRm6{^KPyju*9Hq(1{CoDAM_`(tOP hr(;|$HB{FevGv;G`ZU=qOu3D5I*Q#@WGD~3`UCjsE|35K literal 0 HcmV?d00001 diff --git a/app/keystore/T40Air.jks b/app/keystore/T40Air.jks new file mode 100644 index 0000000000000000000000000000000000000000..04a061ac217c81e9c9f8e8af303bcc96a513d052 GIT binary patch literal 2354 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 literal 0 HcmV?d00001 diff --git a/app/src/main/java/com/xxpatx/os/activity/emergency/EmergencyActivity.java b/app/src/main/java/com/xxpatx/os/activity/emergency/EmergencyActivity.java index 3851911..8585409 100644 --- a/app/src/main/java/com/xxpatx/os/activity/emergency/EmergencyActivity.java +++ b/app/src/main/java/com/xxpatx/os/activity/emergency/EmergencyActivity.java @@ -85,7 +85,7 @@ public class EmergencyActivity extends BaseMvvmActivity() { @Override public void onSubscribe(@NonNull Disposable d) { diff --git a/app/src/main/java/com/xxpatx/os/activity/main/MainActivity.java b/app/src/main/java/com/xxpatx/os/activity/main/MainActivity.java index dcbb96e..589f925 100644 --- a/app/src/main/java/com/xxpatx/os/activity/main/MainActivity.java +++ b/app/src/main/java/com/xxpatx/os/activity/main/MainActivity.java @@ -170,8 +170,8 @@ public class MainActivity extends BaseMvvmActivity() { + @Override + public void onChanged(SystemSettings systemSettings) { + mViewDataBinding.setSystemSettings(systemSettings); + mMMKV.encode(UIUIAIOS_DESKTOP_LOCATION_STATUS, systemSettings.getDesktop_location()); + } + }); + mViewModel.getSetting(); } @Override @@ -122,23 +147,42 @@ public class SettingsFragment extends BaseMvvmFragment { private static final String TAG = "SettingsViewModel"; @@ -25,5 +37,36 @@ public class SettingsViewModel extends BaseViewModel mSystemSettingsData = new MutableLiveData<>(); + + public void getSetting() { + NetInterfaceManager.getInstance().getSettingControl() + .compose(RxLifecycle.bindUntilEvent(getLifecycle(), FragmentEvent.DESTROY)) + .subscribe(new Observer>() { + @Override + public void onSubscribe(@NonNull Disposable d) { + Log.e("getSetting", "onSubscribe: "); + } + + @Override + public void onNext(@NonNull BaseResponse baseResponse) { + Log.e("getSetting", "onNext: " + baseResponse); + if (baseResponse.code == 200) { + SystemSettings systemSettings = baseResponse.data; + mSystemSettingsData.setValue(systemSettings); + } + } + + @Override + public void onError(@NonNull Throwable e) { + Log.e("getSetting", "onError: " + e.getMessage()); + } + + @Override + public void onComplete() { + Log.e("getSetting", "onComplete: "); + } + }); + } } diff --git a/app/src/main/java/com/xxpatx/os/manager/AppStatusManager.java b/app/src/main/java/com/xxpatx/os/manager/AppStatusManager.java index 762becf..7d92bae 100644 --- a/app/src/main/java/com/xxpatx/os/manager/AppStatusManager.java +++ b/app/src/main/java/com/xxpatx/os/manager/AppStatusManager.java @@ -30,9 +30,10 @@ public class AppStatusManager { private Set hidedAppSet; public static final String APP_STATUS_MANAGER_KEY = "AppStatusManagerSet"; + private static final Set defaultHiedApp = new HashSet() {{ this.add("om.android.fmradio");//收音机 -// this.add("com.android.mms");//信息 + this.add("com.android.mms");//信息 this.add("com.android.gallery3d"); this.add("com.android.documentsui"); this.add("com.android.calculator2"); @@ -71,6 +72,13 @@ public class AppStatusManager { mMMKV.encode(CommonConfig.HIDE_CALENDAR_KEY, true); Log.e(TAG, "AppStatusManager: hide calendar"); } + long oldVersionCode = mMMKV.decodeLong(CommonConfig.APP_VERSION_CODE, 0); + if (oldVersionCode == 0) { + addHidedApp("com.android.stk"); + addHidedApp("com.tencent.mm"); + addHidedApp("com.ss.android.ugc.aweme"); + addHidedApp("com.android.mms"); + } } public static void init(Context context) { diff --git a/app/src/main/java/com/xxpatx/os/network/NetInterfaceManager.java b/app/src/main/java/com/xxpatx/os/network/NetInterfaceManager.java index a86adcc..dc7aa63 100644 --- a/app/src/main/java/com/xxpatx/os/network/NetInterfaceManager.java +++ b/app/src/main/java/com/xxpatx/os/network/NetInterfaceManager.java @@ -20,7 +20,6 @@ import com.xxpatx.os.bean.AddressInfo; import com.xxpatx.os.bean.AlarmClockId; import com.xxpatx.os.bean.AppInfo; import com.xxpatx.os.bean.ArticleList; -import com.xxpatx.os.bean.BaiduMapGeoBean; import com.xxpatx.os.bean.BaseResponse; import com.xxpatx.os.bean.Contact; import com.xxpatx.os.bean.DemandBean; @@ -46,7 +45,6 @@ import com.xxpatx.os.disklrucache.CacheHelper; import com.xxpatx.os.gson.GsonUtils; import com.xxpatx.os.manager.ConnectManager; import com.xxpatx.os.manager.ConnectMode; -import com.xxpatx.os.network.api.amap.GeocodingApi; import com.xxpatx.os.network.api.qweather.LookupApi; import com.xxpatx.os.network.api.uiui.ActivityListApi; import com.xxpatx.os.network.api.uiui.AddressIndexApi; @@ -132,9 +130,6 @@ public class NetInterfaceManager { private Retrofit mRetrofit; private OkHttpClient okHttpClient; - private Retrofit mAmapRetrofit; - private OkHttpClient mAmapOkHttpClient; - private Retrofit mQweatherRetrofit; private OkHttpClient mQweatherOkHttpClient; @@ -175,31 +170,6 @@ public class NetInterfaceManager { .build(); } - if (mAmapOkHttpClient == null) { - //如果无法生存缓存文件目录,检测权限使用已经加上,检测手机是否把文件读写权限禁止了 - OkHttpClient.Builder builder = new OkHttpClient.Builder(); - builder.connectTimeout(TIME_OUT, TimeUnit.SECONDS); // 设置连接超时时间 - builder.writeTimeout(TIME_OUT, TimeUnit.SECONDS);// 设置写入超时时间 - builder.readTimeout(TIME_OUT, TimeUnit.SECONDS);// 设置读取数据超时时间 - builder.retryOnConnectionFailure(true);// 设置进行连接失败重试 - builder.addInterceptor(new RepeatRequestInterceptor()); - - // 设置缓存文件路径 - String cacheDirectory = mContext.getExternalCacheDir().getAbsolutePath() + "/OkHttpCache"; - Cache cache = new Cache(new File(cacheDirectory), CACHE_SIZE); - builder.cache(cache);// 设置缓存 - mAmapOkHttpClient = builder.build(); - } - - if (mAmapRetrofit == null) { - mAmapRetrofit = new Retrofit.Builder() - .client(mAmapOkHttpClient) - .baseUrl(UrlAddress.AMAP_ROOT_URL) - .addConverterFactory(GsonConverterFactory.create()) - .addCallAdapterFactory(RxJava3CallAdapterFactory.create()) - .build(); - } - if (mQweatherOkHttpClient == null) { //如果无法生存缓存文件目录,检测权限使用已经加上,检测手机是否把文件读写权限禁止了 OkHttpClient.Builder builder = new OkHttpClient.Builder(); @@ -280,14 +250,6 @@ public class NetInterfaceManager { return okHttpClient; } - @Deprecated - public Observable getGeoObservable(String address) { - return mAmapRetrofit.create(GeocodingApi.class) - .geocoding(address, "json", "RGAsG7hN9gbDxeruqF4Lsf0ro6pp362O") - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()); - } - public Observable getLookupObservable(String address) { return mQweatherRetrofit.create(LookupApi.class) .lookup(address, "c5928a6a274c4a1cb80957a293b27898") @@ -295,7 +257,6 @@ public class NetInterfaceManager { .observeOn(AndroidSchedulers.mainThread()); } - public static RequestBody convertToRequestBody(String param) { RequestBody requestBody = RequestBody.create(MediaType.parse("text/plain"), param); return requestBody; @@ -349,14 +310,14 @@ public class NetInterfaceManager { .observeOn(AndroidSchedulers.mainThread()); } - public Observable> getsettingControl() { + public Observable> getSettingControl() { return mRetrofit.create(SettingApi.class) .getSetting(Utils.getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } - public Observable getSOSRecordObservable(String longitude, String latitude, String address) { + public Observable getSosRecordObservable(String longitude, String latitude, String address) { return mRetrofit.create(SosRecordApi.class) .sendSosRecord(Utils.getSerial(), longitude, latitude, address) .subscribeOn(Schedulers.io()) @@ -1182,18 +1143,18 @@ public class NetInterfaceManager { } public void getSystemSettings(BehaviorSubject lifecycle, ContactCallback callback) { - getsettingControl() + getSettingControl() .compose(RxLifecycle.bindUntilEvent(lifecycle, ActivityEvent.DESTROY)) .subscribe(getSystemSettingsObserver(callback)); } public void getSystemSettings(ContactCallback callback) { - getsettingControl() + getSettingControl() .subscribe(getSystemSettingsObserver(callback)); } public void getSystemSettings() { - getsettingControl() + getSettingControl() .subscribe(getSystemSettingsObserver(null)); } diff --git a/app/src/main/java/com/xxpatx/os/network/UrlAddress.java b/app/src/main/java/com/xxpatx/os/network/UrlAddress.java index 95093e0..4dc4fca 100644 --- a/app/src/main/java/com/xxpatx/os/network/UrlAddress.java +++ b/app/src/main/java/com/xxpatx/os/network/UrlAddress.java @@ -2,9 +2,7 @@ package com.xxpatx.os.network; public class UrlAddress { public static final String ROOT_URL = "https://ghapi.mdmsaas.cn/android/"; - /*百度地图*/ - @Deprecated - public static final String AMAP_ROOT_URL = "https://api.map.baidu.com/"; + /*和风天气*/ public static final String QWEATHER_ROOT_URL = "https://geoapi.qweather.com/"; @@ -157,11 +155,6 @@ public class UrlAddress { - - /*逆地理编码*/ - @Deprecated - public static final String GEOCODING = "geocoding/v3/"; - /*城市搜索*/ public static final String CITY_LOOKUP = "v2/city/lookup"; diff --git a/app/src/main/java/com/xxpatx/os/network/api/amap/GeocodingApi.java b/app/src/main/java/com/xxpatx/os/network/api/amap/GeocodingApi.java deleted file mode 100644 index 61bbedc..0000000 --- a/app/src/main/java/com/xxpatx/os/network/api/amap/GeocodingApi.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.xxpatx.os.network.api.amap; - -import com.xxpatx.os.bean.BaiduMapGeoBean; -import com.xxpatx.os.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface GeocodingApi { - @GET(UrlAddress.GEOCODING) - Observable geocoding( - @Query("address") String address, - @Query("output") String output, - @Query("ak") String key - ); -} diff --git a/app/src/main/java/com/xxpatx/os/service/WeAccessibilityService.java b/app/src/main/java/com/xxpatx/os/service/WeAccessibilityService.java index 4d8ae9e..82873ec 100644 --- a/app/src/main/java/com/xxpatx/os/service/WeAccessibilityService.java +++ b/app/src/main/java/com/xxpatx/os/service/WeAccessibilityService.java @@ -375,6 +375,7 @@ public class WeAccessibilityService extends AccessibilityService { Point point = getPointtByNode(node); Log.e(TAG, "stepAnswer: " + point); clickByNode(point.x, point.y - 50); + clickByNode(point.x, point.y); // clickNode(node); Log.e(TAG, "stepAnswer: mCurrentStep " + mCurrentStep + " done"); mCurrentStep = Step.WAITING; diff --git a/app/src/main/java/com/xxpatx/os/service/main/MainService.java b/app/src/main/java/com/xxpatx/os/service/main/MainService.java index 043a781..a76cbca 100644 --- a/app/src/main/java/com/xxpatx/os/service/main/MainService.java +++ b/app/src/main/java/com/xxpatx/os/service/main/MainService.java @@ -50,7 +50,9 @@ import java.lang.reflect.Method; import java.lang.reflect.Type; import java.util.Calendar; import java.util.HashMap; +import java.util.HashSet; import java.util.List; +import java.util.Set; import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers; import io.reactivex.rxjava3.core.Observable; @@ -165,6 +167,17 @@ public class MainService extends BaseRxService implements MainSContact.MainSView NetworkUtils.registerNetworkStatusChangedListener(this); mPresenter.addAlarmClock(); + long oldVersionCode = mMMKV.decodeLong(CommonConfig.APP_VERSION_CODE, 0); + if (oldVersionCode == 1038) { + + } + if (oldVersionCode < BuildConfig.VERSION_CODE) { + + } else { + + } + mMMKV.encode(CommonConfig.APP_VERSION_CODE, BuildConfig.VERSION_CODE); + registerAlarmReceiver(); registerTimeReceiver(); registerLockScreenReceiver(); @@ -637,13 +650,22 @@ public class MainService extends BaseRxService implements MainSContact.MainSView isBallShown = true; } + private static final Set skip_kill_app = new HashSet() {{ + this.add(BuildConfig.APPLICATION_ID); + this.add("com.xxpatx.sn"); + this.add("com.tencent.mm"); + this.add("com.google.android.inputmethod.pinyin"); + this.add("com.sohu.inputmethod.sogou"); + this.add("com.baidu.input"); + this.add("com.tencent.wetype"); + this.add("com.tencent.qqpinyin"); + this.add("com.iflytek.inputmethod"); + }}; + private void killBackgroundApp() { List pkgList = ApkUtils.getRuningPackageList(this); for (String pkg : pkgList) { - if (pkg.equalsIgnoreCase(BuildConfig.APPLICATION_ID) - || "com.xxpatx.sn".equals(pkg) - || "com.tencent.mm".equals(pkg) - ) { + if (skip_kill_app.contains(pkg)) { continue; } killBackgroundProcesses(pkg); diff --git a/app/src/main/java/com/xxpatx/os/utils/Utils.java b/app/src/main/java/com/xxpatx/os/utils/Utils.java index 6a9ee8b..a3252f2 100644 --- a/app/src/main/java/com/xxpatx/os/utils/Utils.java +++ b/app/src/main/java/com/xxpatx/os/utils/Utils.java @@ -25,7 +25,9 @@ import android.telecom.PhoneAccountHandle; import android.telecom.TelecomManager; import android.telephony.TelephonyManager; import android.text.TextUtils; +import android.util.DisplayMetrics; import android.util.Log; +import android.view.WindowManager; import androidx.core.content.ContextCompat; @@ -119,8 +121,8 @@ public class Utils { context.startActivity(i); } - private static String Launcher3 = "com.android.launcher3"; - private static String Launcher3Class = "com.android.launcher3.Launcher"; + private static final String Launcher3 = "com.android.launcher3"; + private static final String Launcher3Class = "com.android.launcher3.Launcher"; public static void setDefaultDesktop(Context context, String pkg, String className) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { @@ -384,4 +386,26 @@ public class Utils { return cachePath; } + public static String getAndroiodScreenProperty(Context context) { + WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); + DisplayMetrics dm = new DisplayMetrics(); + wm.getDefaultDisplay().getRealMetrics(dm); + int width = dm.widthPixels; // 屏幕宽度(像素) + int height = dm.heightPixels; // 屏幕高度(像素) + float density = dm.density; // 屏幕密度(0.75 / 1.0 / 1.5) + int densityDpi = dm.densityDpi; // 屏幕密度dpi(120 / 160 / 240) + // 屏幕宽度算法:屏幕宽度(像素)/屏幕密度 + int screenWidth = (int) (width / density); // 屏幕宽度(dp) + int screenHeight = (int) (height / density);// 屏幕高度(dp) + + Log.e("getAndroiodScreenProperty", "屏幕宽度(像素):" + width); + Log.e("getAndroiodScreenProperty", "屏幕高度(像素):" + height); + Log.e("getAndroiodScreenProperty", "屏幕密度(0.75 / 1.0 / 1.5):" + density); + Log.e("getAndroiodScreenProperty", "屏幕密度dpi(120 / 160 / 240):" + densityDpi); + Log.e("getAndroiodScreenProperty", "屏幕宽度(dp):" + screenWidth); + Log.e("getAndroiodScreenProperty", "屏幕高度(dp):" + screenHeight); + + Log.e("getAndroiodScreenProperty", "smallestScreenWidthDp: " + context.getResources().getConfiguration().smallestScreenWidthDp); + return width + "×" + height; + } } diff --git a/app/src/main/res/layout/fragment_settings.xml b/app/src/main/res/layout/fragment_settings.xml index cdf29db..73e1d43 100644 --- a/app/src/main/res/layout/fragment_settings.xml +++ b/app/src/main/res/layout/fragment_settings.xml @@ -9,6 +9,12 @@ + + + + - + android:visibility="@{systemSettings.desktop_location==1?View.VISIBLE:View.INVISIBLE}"> + + + + + + - - diff --git a/niceimageview/build.gradle b/niceimageview/build.gradle index c97f41b..c974071 100644 --- a/niceimageview/build.gradle +++ b/niceimageview/build.gradle @@ -11,6 +11,8 @@ android { } buildTypes { + M50T60Debug {} + M50T60Release {} debug {} release {} } diff --git a/verification-view/build.gradle b/verification-view/build.gradle index c3085cb..eb63dac 100644 --- a/verification-view/build.gradle +++ b/verification-view/build.gradle @@ -13,6 +13,8 @@ android { } buildTypes { + M50T60Debug {} + M50T60Release {} debug {} release {} }