From: snickersun Date: Thu, 29 Oct 2020 13:54:28 +0000 (+0800) Subject: release V168 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=305c20e20ae757ae8151a763698d20ab441e4573;p=launcher4.git release V168 添加Q3FYT 项目界面,采用AK和L02的合集 --- diff --git a/app/release/ICL02Launcher_V165_202010250101_release.apk b/app/release/ICL02Launcher_V168_202010292150_release.apk similarity index 52% rename from app/release/ICL02Launcher_V165_202010250101_release.apk rename to app/release/ICL02Launcher_V168_202010292150_release.apk index b61e37e..5c2eedc 100644 Binary files a/app/release/ICL02Launcher_V165_202010250101_release.apk and b/app/release/ICL02Launcher_V168_202010292150_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index 60e4f93..192da07 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":165,"versionName":"202010250101","enabled":true,"outputFile":"ICL02Launcher_V165_202010250101_release.apk","fullName":"release","baseName":"release"},"path":"ICL02Launcher_V165_202010250101_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":168,"versionName":"202010292150","enabled":true,"outputFile":"ICL02Launcher_V168_202010292150_release.apk","fullName":"release","baseName":"release"},"path":"ICL02Launcher_V168_202010292150_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/com/ic/launcher/FragmentManage.java b/app/src/main/java/com/ic/launcher/FragmentManage.java index 70a72a8..766dabe 100644 --- a/app/src/main/java/com/ic/launcher/FragmentManage.java +++ b/app/src/main/java/com/ic/launcher/FragmentManage.java @@ -10,10 +10,13 @@ import androidx.fragment.app.FragmentTransaction; import com.ic.launcher.fragment.AppListFragment; import com.ic.launcher.fragment.BaseFragment; import com.ic.launcher.fragment.L02MainFragment; +import com.ic.launcher.fragment.S123MainFragment; + import com.ic.launcher.fragment.LowPowerModeFragment; import com.ic.launcher.fragment.clock.Clock12DialFragment; import com.ic.launcher.fragment.clock.Clock6DialFragment; import com.ic.launcher.util.SPUtils; +import com.ic.launcher.util.SystemUtils; import static com.ic.launcher.configure.l02.L02Icon.CLOCK_INDEX_12; import static com.ic.launcher.configure.l02.L02Icon.CLOCK_INDEX_6; @@ -144,7 +147,11 @@ public class FragmentManage { case CLOCK_INDEX_12: return Clock12DialFragment.newInstance(); default: - return L02MainFragment.newInstance(); + if(SystemUtils.isS123()){ + return S123MainFragment.newInstance(); + }else { + return L02MainFragment.newInstance(); + } } } diff --git a/app/src/main/java/com/ic/launcher/configure/l02/L02AppInfo.java b/app/src/main/java/com/ic/launcher/configure/l02/L02AppInfo.java index 681fd70..c552ae8 100644 --- a/app/src/main/java/com/ic/launcher/configure/l02/L02AppInfo.java +++ b/app/src/main/java/com/ic/launcher/configure/l02/L02AppInfo.java @@ -33,8 +33,10 @@ public class L02AppInfo { String language = locale.getLanguage(); if (SystemUtils.isH88()) { return mH88AppList; - }else if (SystemUtils.isS123()){ + }else if (SystemUtils.isS123()) { return mS123DefaultAppList; + }else if (SystemUtils.isYT()){ + return mq3fytDefaultAppList; }else{ if (language.contains("zh")) { return mL02DefaultAppList; @@ -57,6 +59,71 @@ public class L02AppInfo { * 拨号的顺序不能变 在低电量模式下会查找这个列表,然后查找索引为1的拨号, * 如果要修改 请到 {@link LowPowerModeFragment} 中一并修改 **/ + + private static final List mq3fytDefaultAppList = new ArrayList() { + { + + //联系人 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_contacts_l02, R.string.app_ContactName, + "com.enqualcomm.imessage", "com.enqualcomm.imessage.ui.PhoneDirectoryActivity")); + //拨号 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_dialer_l02, R.string.app_dialer, + "com.ic.dial", "com.ic.dial.MainActivity")); + + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.ak_app_icon_call_records, R.string.app_calllog, + "com.yjsoft.phonelog", "com.yjsoft.phonelog.MainActivity")); + + //短信 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_sms_l02, R.string.app_Sms, + "com.zmapp.sms", "com.zmapp.sms.MainActivity")); + + //心率 + if(ppg_ecg_sensor_available) { + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_heartrate_l02, R.string.app_name_heart, + "com.ic.blood", "com.ic.blood.BloodActivity")); +// "com.ic.ak.hardware", "com.ic.ak.hardware.ui.BloodActivity")); + } + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.ak_app_icon_sleep, R.string.app_title_sleep, + "com.ic.ak.hardware", "com.ic.ak.hardware.ui.SleepActivity")); + + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.ak_app_icon_sedentary, R.string.app_title_sedentary, + "com.ic.ak.hardware", "com.ic.ak.hardware.ui.SedentaryActivity")); + + //运动 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_pedometer_l02, R.string.app_Sport, + "com.ic.ak.hardware", "com.ic.ak.hardware.ui.PedometerActivity")); + // //天气 +// add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_weather_l02, R.string.app_Weather, + // "com.ic.weather", "com.ic.weather.WeatherActivity")); + + + //微聊 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_talk_l02, R.string.app_Chat, + "com.enqualcomm.imessage", "com.enqualcomm.imessage.ui.MicroChatActivity")); + + + +// //支付包 +// add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_alipay_l02, R.string.app_AliPay, +// "com.eg.android.AlipayGphone", "com.alipay.watch.ui.MainActivity")); + //相机 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_camera_l02, R.string.app_Camera, + "com.eqc.camera", "com.eqc.camera.TakePictureActivity")); + //相册 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_albumn_l02, R.string.app_Album, + "com.eqc.gallery", "com.eqc.gallery.ui.LocalAlbumDetail")); + +// add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_language_h88, R.string.app_h88_language, +// "com.ic.languageguide", "com.ic.languageguide.MainActivity")); + + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_qr_code_h88, R.string.app_h88_qrcode, + "com.ic.launcher", "com.ic.launcher.QrCodeActivity")); + + //设置 + add(new AppInfoEntity(BACK_COLOUR, R.mipmap.icon_settings_l02, R.string.main_manu_settings, + "com.eqc.settings", "com.eqc.settings.MainActivity")); + } + }; private static final List mS123DefaultAppList = new ArrayList() { { diff --git a/app/src/main/java/com/ic/launcher/fragment/L02MainFragment.java b/app/src/main/java/com/ic/launcher/fragment/L02MainFragment.java index 6db842f..c24cd9e 100644 --- a/app/src/main/java/com/ic/launcher/fragment/L02MainFragment.java +++ b/app/src/main/java/com/ic/launcher/fragment/L02MainFragment.java @@ -30,7 +30,7 @@ public class L02MainFragment extends BaseFragment { private static final String TAG = "L02MainFragment"; - private FragmentS123MainBinding mainBinding; + private FragmentL02MainBinding mainBinding; private boolean chargingState; public static L02MainFragment newInstance() { @@ -62,7 +62,7 @@ public class L02MainFragment extends BaseFragment { Bundle savedInstanceState) { - mainBinding = FragmentS123MainBinding.inflate(inflater, container, false); + mainBinding = FragmentL02MainBinding.inflate(inflater, container, false); mainBinding.setHeartValue(String.valueOf(SPUtils.getBloodHeartSP(mContext))); mainBinding.setTempValue(String.format("%.1f",SPUtils.getTempSP(mContext))); mainBinding.setSpo2value(String.valueOf(SPUtils.getBloodSPo2SP(mContext))); @@ -79,6 +79,7 @@ public class L02MainFragment extends BaseFragment { mainBinding.setShowTemp(View.GONE); mainBinding.setShowStep(View.VISIBLE); + } //监听事件 initOnTouchListener(mainBinding.getRoot()); diff --git a/app/src/main/java/com/ic/launcher/fragment/S123MainFragment.java b/app/src/main/java/com/ic/launcher/fragment/S123MainFragment.java new file mode 100644 index 0000000..3140a3f --- /dev/null +++ b/app/src/main/java/com/ic/launcher/fragment/S123MainFragment.java @@ -0,0 +1,229 @@ +package com.ic.launcher.fragment; + +import android.app.Application; +import android.content.Context; +import android.os.Bundle; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.lifecycle.ViewModelProvider; + +import com.ic.launcher.configure.l02.L02Icon; +import com.ic.launcher.databinding.FragmentL02MainBinding; +import com.ic.launcher.databinding.FragmentS123MainBinding; +import com.ic.launcher.mode.BaseModel; +import com.ic.launcher.mode.L02MainModel; +import com.ic.launcher.util.IcLog; +import com.ic.launcher.util.SPUtils; +import com.ic.launcher.util.SystemUtils; + + +public class S123MainFragment extends BaseFragment { + + private static final String TAG = "L02MainFragment"; + + private FragmentS123MainBinding mainBinding; + private boolean chargingState; + + public static S123MainFragment newInstance() { + return new S123MainFragment(); + } + + @Override + public void onAttach(@NonNull Context context) { + super.onAttach(context); + } + + @Override + protected BaseModel initFragmentModel(Application application) { + L02MainModel.Factory factory = new L02MainModel.Factory(application); + return new ViewModelProvider(this, factory).get(L02MainModel.class); + } + + @Override + protected void onObserveModelValue(BaseModel baseModel) { + L02MainModel mainModel = (L02MainModel)baseModel; + observePhoneValue( mainModel); + observeBatteryValue(mainModel); + observeDataTimeValue(mainModel); + observeHardwareValue(mainModel); + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + + + mainBinding = FragmentS123MainBinding.inflate(inflater, container, false); + mainBinding.setHeartValue(String.valueOf(SPUtils.getBloodHeartSP(mContext))); + mainBinding.setTempValue(String.format("%.1f",SPUtils.getTempSP(mContext))); + mainBinding.setSpo2value(String.valueOf(SPUtils.getBloodSPo2SP(mContext))); + mainBinding.setOutTempValue(String.format("%.1f",SPUtils.getTempOutSP(mContext))); + chargingState=false; + mainBinding.setStepValue("0"); + if(SystemUtils.isS123()) + { + Log.i(TAG,"isS123"); + mainBinding.setShowStep(View.GONE); + mainBinding.setShowTemp(View.VISIBLE); + }else{ + Log.i(TAG,"not S123"); + mainBinding.setShowTemp(View.GONE); + mainBinding.setShowStep(View.VISIBLE); + + + } + //监听事件 + initOnTouchListener(mainBinding.getRoot()); + return mainBinding.getRoot(); + } + + @Override + public void onResume() { + super.onResume(); + if(chargingState){ + if(mainBinding != null){ + mainBinding.setBatteryCharge(true); + } + } + } + + @Override + public void onPause() { + super.onPause(); + if(chargingState){ + if(mainBinding != null){ + mainBinding.setBatteryCharge(false); + } + } + } + + private void observePhoneValue(L02MainModel model) { + model.getObservablePhoneType().observe(this, resID ->{ + if(mainBinding != null){ + mainBinding.setPhoneNetType(resID); + } + }); + + model.getObservableSignal().observe(this, resID ->{ + if(mainBinding != null){ + if(resID == L02Icon.l02SignalResId[0] + || resID == L02Icon.l02SignalResId[1]){ + mainBinding.setPhoneShow(false); + }else{ + mainBinding.setPhoneShow(true); + } + mainBinding.setPhoneSignal(resID); + } + }); + + model.getObservableTransport().observe(this, resID -> { + if(mainBinding != null){ + mainBinding.setPhoneTransport(resID); + } + }); + + model.getObservableBTStatus().observe(this,btStatus ->{ + if(mainBinding !=null){ + mainBinding.setBtStatus(btStatus); + } + }); + + model.getObservableWiFiStatus().observe(this, wifiStatus ->{ + if(mainBinding !=null){ + mainBinding.setWifiStatus(wifiStatus); + } + }); + model.getObservableGpsStatus().observe(this, gpsStatus ->{ + if(mainBinding !=null){ + mainBinding.setGpsStatus(gpsStatus); + } + }); + } + + private void observeBatteryValue(L02MainModel model) { + model.getObservableBatteryValue().observe(this, value ->{ + if(mainBinding != null){ + mainBinding.setBatteryValue(value); + } + }); + + model.getObservableBattery().observe(this, resID ->{ + if(mainBinding != null){ + mainBinding.setBatteryDrawable(resID); + } + }); + + model.getObservableBatteryCharging().observe(this, state -> { + if(chargingState != state){ + chargingState =state; + if(mainBinding != null){ + mainBinding.setBatteryCharge(chargingState); + } + } + }); + } + + private void observeDataTimeValue(L02MainModel model) { + model.getObservableWeek().observe(this, week ->{ + if(mainBinding != null){ + mainBinding.setWatchWeek(week); + } + }); + + model.getObservableYear().observe(this, year -> { + if(mainBinding != null){ + mainBinding.setWatchDate(year); + } + }); + + model.getObservableTime().observe(this, time -> { + if(mainBinding != null){ + updateTimeValue(time); + } + }); + } + + private void observeHardwareValue(L02MainModel model) { + model.getObservableHardwareHeart().observe(this, heart ->{ + if(mainBinding != null){ + mainBinding.setHeartValue(heart); + } + }); + + model.getObservableHardwarePed().observe(this, ped -> { + if(mainBinding != null){ + mainBinding.setStepValue(ped); + } + }); + model.getObservableHardwareTemp().observe(this, temp -> { + if(mainBinding != null){ + IcLog.i(TAG,"action get temp "+temp); + mainBinding.setTempValue(temp); + } + }); + model.getObservableHardwareTempOut().observe(this, temp -> { + if(mainBinding != null){ + IcLog.i(TAG,"action get tempOut "+temp); + mainBinding.setOutTempValue(temp); + } + }); + model.getObservableHardwareHeartSpo2().observe(this, spo2 -> { + if(mainBinding != null){ + IcLog.i(TAG,"action get SPo2 "+spo2); + mainBinding.setSpo2value(spo2); + } + }); + } + + private void updateTimeValue(int[] value){ + IcLog.i("TEST","updateTimeValue"); + mainBinding.setHourTen(value[0]); + mainBinding.setHourBit(value[1]); + mainBinding.setMinuteTen(value[2]); + mainBinding.setMinuteBit(value[3]); + } +} diff --git a/app/src/main/java/com/ic/launcher/util/SystemUtils.java b/app/src/main/java/com/ic/launcher/util/SystemUtils.java index 9c9b2cf..29ccecd 100644 --- a/app/src/main/java/com/ic/launcher/util/SystemUtils.java +++ b/app/src/main/java/com/ic/launcher/util/SystemUtils.java @@ -59,12 +59,27 @@ public class SystemUtils { } return false; } - + public static boolean isq3fyt() + { + String launcher=getLauncherName(); + if (launcher.equals("q3fyt")){ + return true; + } + return false; + } public static String getLauncherName(){ String launchername=getSystemPropertiesString("persist.sys.launcherName","l02"); return launchername; } + public static boolean isYT(){ + String launcher=getLauncherName(); + if (launcher.equals("q3fyt")){ + return true; + } + return false; + } + public static String getSystemPropertiesString(String prop,String defaultvlaue){ String ret=defaultvlaue; diff --git a/app/src/main/res/layout/fragment_l02_main.xml b/app/src/main/res/layout/fragment_l02_main.xml index ad57257..c00a17c 100644 --- a/app/src/main/res/layout/fragment_l02_main.xml +++ b/app/src/main/res/layout/fragment_l02_main.xml @@ -163,7 +163,7 @@ android:id="@+id/l02_heart_img" style="@style/watchDateIconStyle" android:layout_alignParentStart="true" - android:layout_marginStart="40dp" + android:layout_marginStart="10dp" android:src="@mipmap/clockl02_heartrate_icon" /> + + - - diff --git a/app/src/main/res/mipmap-mdpi/ak_app_icon_call_records.png b/app/src/main/res/mipmap-mdpi/ak_app_icon_call_records.png new file mode 100644 index 0000000..e90dbb4 Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ak_app_icon_call_records.png differ diff --git a/app/src/main/res/mipmap-mdpi/ak_app_icon_sedentary.png b/app/src/main/res/mipmap-mdpi/ak_app_icon_sedentary.png new file mode 100644 index 0000000..5d45d57 Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ak_app_icon_sedentary.png differ diff --git a/app/src/main/res/mipmap-mdpi/ak_app_icon_sleep.png b/app/src/main/res/mipmap-mdpi/ak_app_icon_sleep.png new file mode 100644 index 0000000..14bee3a Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ak_app_icon_sleep.png differ diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index 2210d30..4d8199a 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -62,6 +62,9 @@ Contacts Call VoLTE Call + CallLog + Sedentary + Sleep Message VideoCall We chat diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 225b3cc..e4bab21 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -58,6 +58,9 @@ 高清通话 短信 视频通话 + 通话记录 + 久坐提醒 + 睡眠监测 微信 微聊 照相 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index f3d23ad..9fc79e9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -56,8 +56,11 @@ 联系人 电话 高清通话 + 通话记录 短信 视频通话 + 久坐提醒 + 睡眠监测 微信 微聊 照相 diff --git a/app/version_code.properties b/app/version_code.properties index f280bcf..08cb512 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Sun Oct 25 01:01:29 CST 2020 -VERSION_CODE=165 +#Thu Oct 29 21:50:50 CST 2020 +VERSION_CODE=168