From d55cb89936e333f17bf4acecde063dff1f820d3e Mon Sep 17 00:00:00 2001 From: yezhiqiu <983577727@qq.com> Date: Wed, 4 Feb 2026 10:19:23 +0800 Subject: [PATCH] =?UTF-8?q?1.=E7=BD=91=E7=BB=9C=E6=8E=A5=E5=8F=A3=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E8=B6=85=E6=97=B610s=E4=BF=AE=E6=94=B9=E4=B8=BA35?= =?UTF-8?q?=E7=A7=92=202.=E5=85=B3=E6=9C=BA=E7=94=B1=E5=8E=9F=E6=9D=A5?= =?UTF-8?q?=E7=9A=84:0x04=20->=20turnoff=E6=8E=A5=E5=8F=A3=20->=200x18?= =?UTF-8?q?=EF=BC=8C=E6=94=B9=E4=B8=BA:0x18->=20turnoff=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/set/LiveDurationSetActivity.kt | 6 ++-- .../activity/device/set/PowerOffActivity.kt | 10 ++++-- .../device/set/TrackingDurationSetActivity.kt | 4 ++- .../ui/fragment/device/HomeTrackFragment.kt | 35 +++++++++++-------- .../network/base/BaseNetworkApi.kt | 8 +++-- 5 files changed, 40 insertions(+), 23 deletions(-) diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/LiveDurationSetActivity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/LiveDurationSetActivity.kt index 98da5f0..e704083 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/LiveDurationSetActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/LiveDurationSetActivity.kt @@ -25,6 +25,7 @@ class LiveDurationSetActivity : //选中的下标 private var mSelectIndex = -1 + private var mSelectTempIndex = -1 private var mMapDeviceBean: MapDeviceBean? = null @@ -55,6 +56,7 @@ class LiveDurationSetActivity : dealRequestResult(it, object : GetResultCallback { override fun onResult(any: Any) { showToast(R.string.txt_change_successful) + mSelectIndex = mSelectTempIndex ViewUtil.instance.updateDataBeanOnlySelectedItem( mDurationSetAdapter, mDurationSetAdapter.getData(), mSelectIndex ) @@ -69,7 +71,7 @@ class LiveDurationSetActivity : for (time in timeList) { DataBean().apply { imageId = time - name = String.format(getString(R.string.txt_duration_min_unit), time) + name = String.format(getString(R.string.txt_duration_min_unit), "$time") durationList.add(this) } } @@ -96,7 +98,7 @@ class LiveDurationSetActivity : fun setLiveDuration(pos: Int) { if (mSelectIndex == pos) return mMapDeviceBean?.apply { - mSelectIndex = pos + mSelectTempIndex = pos val dataBean = mDurationSetAdapter.getData()[pos] mTrackerSetViewModel.setLiveTime( this@LiveDurationSetActivity, deviceId, dataBean.imageId diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/PowerOffActivity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/PowerOffActivity.kt index 2c46563..59e9c99 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/PowerOffActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/PowerOffActivity.kt @@ -93,8 +93,12 @@ class PowerOffActivity : BaseActivity(ActivityPowerOffB val data0 = SRBleCmdUtil.instance.byteToInt(data[0]) val data1 = SRBleCmdUtil.instance.byteToInt(data[1]) val data2 = SRBleCmdUtil.instance.byteToInt(data[2]) - if (data0 == 4 && data1 == 1 && data2 == 0) { - showToast(R.string.txt_done, true) + if (data0 == 0x18 && data1 == 1) { + if (data2 == 0) showToast(R.string.txt_done, true) + else if (data2 == 3) { + setButtonEnabled(mViewBinding.btnPowerOffYes) + showToast(R.string.txt_on_charging) + } } } } @@ -122,7 +126,7 @@ class PowerOffActivity : BaseActivity(ActivityPowerOffB mPetBean?.apply { SRBleUtil.instance.getConnectMacDevice(macID)?.let { setButtonEnabled(mViewBinding.btnPowerOffYes) - val cmd = SRBleCmdUtil.instance.shutdownDevice() + val cmd = SRBleCmdUtil.instance.forcedShutdown() SRBleUtil.instance.writeData(it.bleDevice, cmd) } } diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/TrackingDurationSetActivity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/TrackingDurationSetActivity.kt index 71643bd..1c06d5e 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/TrackingDurationSetActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/device/set/TrackingDurationSetActivity.kt @@ -32,6 +32,7 @@ class TrackingDurationSetActivity : //选中的下标 private var mSelectIndex = -1 + private var mSelectTempIndex = -1 private var mMapDeviceBean: MapDeviceBean? = null @@ -62,6 +63,7 @@ class TrackingDurationSetActivity : dealRequestResult(it, object : GetResultCallback { override fun onResult(any: Any) { showToast(R.string.txt_change_successful) + mSelectIndex = mSelectTempIndex ViewUtil.instance.updateDataBeanOnlySelectedItem( mDurationSetAdapter, mDurationSetAdapter.getData(), mSelectIndex ) @@ -143,7 +145,7 @@ class TrackingDurationSetActivity : fun setTrackingDuration(pos: Int) { if (mSelectIndex == pos) return mMapDeviceBean?.apply { - mSelectIndex = pos + mSelectTempIndex = pos val dataBean = mDurationSetAdapter.getData()[pos] if (BleManager.getInstance().isConnected(deviceMacId)) { SRBleUtil.instance.isConnectBleSendCmdData( diff --git a/app/src/main/java/com/abbidot/tracker/ui/fragment/device/HomeTrackFragment.kt b/app/src/main/java/com/abbidot/tracker/ui/fragment/device/HomeTrackFragment.kt index d001846..19814ae 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/fragment/device/HomeTrackFragment.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/fragment/device/HomeTrackFragment.kt @@ -361,14 +361,11 @@ class HomeTrackFragment : mTurnoffLiveData.observe(viewLifecycleOwner) { dealRequestResult(it, object : GetResultCallback { override fun onResult(any: Any) { -// mTrackMenuList[4].menuValue = ConstantInt.Close.toString() -// mTrackMenuAdapter.notifyItemChanged(4) -// bleTurnOff() - mBleTrackDeviceBean?.apply { - SRBleUtil.instance.writeData( - bleDevice, SRBleCmdUtil.instance.forcedShutdown() - ) - } +// mBleTrackDeviceBean?.apply { +// SRBleUtil.instance.writeData( +// bleDevice, SRBleCmdUtil.instance.forcedShutdown() +// ) +// } } }) } @@ -819,8 +816,22 @@ class HomeTrackFragment : ) } } else if (data0 == 4 && data1 == 1 && data2 == 0) { - mMapDeviceBean?.let { - mTrackerSetViewModel.turnOff(it.deviceServerId) +// mMapDeviceBean?.let { +// mTrackerSetViewModel.turnOff(it.deviceServerId) +// } +// mTrackMenuList[1].menuValue = "" +// mTrackMenuList[2].menuValue = "" +// mTrackMenuList[3].menuValue = "" +// //取消红点显示 +// mTrackMenuList[3].isSwitch = false +// mTrackMenuList[4].menuValue = ConstantInt.Close.toString() +// mTrackMenuAdapter.notifyItemRangeChanged(1, 4) + } else if (data0 == 0x18 && data1 == 1 && data2 == 0) { + mBleTrackDeviceBean?.apply { + SRBleUtil.instance.disconnectToMac(mac) + } + mMapDeviceBean?.let {ble-> + mTrackerSetViewModel.turnOff(ble.deviceServerId) } mTrackMenuList[1].menuValue = "" mTrackMenuList[2].menuValue = "" @@ -829,10 +840,6 @@ class HomeTrackFragment : mTrackMenuList[3].isSwitch = false mTrackMenuList[4].menuValue = ConstantInt.Close.toString() mTrackMenuAdapter.notifyItemRangeChanged(1, 4) - } else if (data0 == 0x18 && data1 == 1 && data2 == 0) { - mBleTrackDeviceBean?.apply { - SRBleUtil.instance.disconnectToMac(mac) - } } } } diff --git a/baselibrary/src/main/java/com/abbidot/baselibrary/network/base/BaseNetworkApi.kt b/baselibrary/src/main/java/com/abbidot/baselibrary/network/base/BaseNetworkApi.kt index bbff261..e045b11 100644 --- a/baselibrary/src/main/java/com/abbidot/baselibrary/network/base/BaseNetworkApi.kt +++ b/baselibrary/src/main/java/com/abbidot/baselibrary/network/base/BaseNetworkApi.kt @@ -114,10 +114,12 @@ abstract class BaseNetworkApi(private val baseUrl: String) : IService { //失败重试请求次数 private const val RETRY_COUNT = 1 + //请求超时时间 + private const val REQUEST_TIMEOUT=35L private val defaultOkHttpClient by lazy { - val builder = OkHttpClient.Builder().callTimeout(10L, TimeUnit.SECONDS) - .connectTimeout(10L, TimeUnit.SECONDS).readTimeout(10L, TimeUnit.SECONDS) - .writeTimeout(10L, TimeUnit.SECONDS).retryOnConnectionFailure(true) + val builder = OkHttpClient.Builder().callTimeout(REQUEST_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(REQUEST_TIMEOUT, TimeUnit.SECONDS).readTimeout(REQUEST_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(REQUEST_TIMEOUT, TimeUnit.SECONDS).retryOnConnectionFailure(true) //添加拦截器 builder.addInterceptor(CommonRequestInterceptor()) builder.addInterceptor(CommonResponseInterceptor())