diff --git a/app/build.gradle b/app/build.gradle index ea7cfe0..3c0bc8f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,9 +28,9 @@ android { applicationId "com.abbidot.tracker" minSdkVersion 23 targetSdkVersion 35 - versionCode 2104 -// versionName "2.1.4" - versionName "2.1.4-Beta1" + versionCode 2105 +// versionName "2.1.5" + versionName "2.1.5-Beta1" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/PaymentSuccessActivity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/PaymentSuccessActivity.kt index d3cadd7..ab64c39 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/PaymentSuccessActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/PaymentSuccessActivity.kt @@ -66,13 +66,6 @@ class PaymentSuccessActivity : // if (it.rechargeType == ConstantInt.Type0) { // btnPaymentSuccessContinue.setText(R.string.txt_continue) // } - if (it.rechargeType == ConstantInt.Type0 || it.rechargeType == ConstantInt.Type1) { - btnPaymentSuccessContinue.isEnabled = false - //刷新设备绑定 - mAddTrackerViewModel.updatePayDeviceState( - this@PaymentSuccessActivity, it.deviceId - ) - } tvPaymentSuccessDeviceId.text = it.deviceOutId tvPaymentSuccessExpiresOnDate.text = Utils.stringToDate( @@ -157,9 +150,16 @@ class PaymentSuccessActivity : mAddTrackerViewModel.mUpdatePayDeviceStateLiveData.observe(this) { dealRequestResult(it, object : GetResultCallback { override fun onResult(any: Any) { - mViewBinding.btnPaymentSuccessContinue.isEnabled = true MMKVUtil.putInt(MMKVKey.isBindDevice, ConstantInt.isBind) XEventBus.post(EventName.RefreshDevice) + if (TextUtils.isEmpty(mMac)) { + XEventBus.post(EventName.PayBack) + finish() + } else SRBleUtil.instance.getConnectMacDevice(mMac)?.let { ble -> + SRBleUtil.instance.writeData( + ble.bleDevice, SRBleCmdUtil.instance.setWorkingStatus() + ) + } } override fun onRequestError(exceptionCode: String?) { @@ -285,6 +285,22 @@ class PaymentSuccessActivity : } } + private fun payContinue() { + mPayResult?.apply { + if (rechargeType == ConstantInt.Type0 || rechargeType == ConstantInt.Type1) { + mViewBinding.btnPaymentSuccessContinue.isEnabled = false + //刷新设备绑定 + mAddTrackerViewModel.updatePayDeviceState(this@PaymentSuccessActivity, deviceId) + } else if (TextUtils.isEmpty(mMac)) { + XEventBus.post(EventName.PayBack) + finish() + } else SRBleUtil.instance.getConnectMacDevice(mMac)?.let { + setButtonEnabled(mViewBinding.btnPaymentSuccessContinue, ConstantInt.Type0) + SRBleUtil.instance.writeData(it.bleDevice, SRBleCmdUtil.instance.setWorkingStatus()) + } + } + } + override fun onClick(v: View?) { mViewBinding.apply { when (v!!) { @@ -292,19 +308,7 @@ class PaymentSuccessActivity : ilPaymentSuccessBluetoothTips.trbBleConnectState.text.toString() ) - btnPaymentSuccessContinue -> { - if (TextUtils.isEmpty(mMac)) { - XEventBus.post(EventName.PayBack) - finish() - } else SRBleUtil.instance.getConnectMacDevice(mMac)?.let { - setButtonEnabled( - mViewBinding.btnPaymentSuccessContinue, ConstantInt.Type0 - ) - SRBleUtil.instance.writeData( - it.bleDevice, SRBleCmdUtil.instance.setWorkingStatus() - ) - } - } + btnPaymentSuccessContinue -> payContinue() } } } 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 9979434..689049a 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 @@ -5,6 +5,7 @@ import android.content.Intent import android.text.TextUtils import android.view.Gravity import android.view.View +import android.view.WindowManager import androidx.fragment.app.viewModels import com.abbidot.baselibrary.constant.ConState import com.abbidot.baselibrary.constant.EventName @@ -342,8 +343,10 @@ class HomeTrackFragment : } } else if (progress == mDeviceDFUViewModel.mDFUFailCode) { // mTrackerDFUStateDialog?.dismiss() + dfuEnd() mDFUNewDialogDialog?.setDFUFail { mFirmwareBean?.apply { + dfuStart() mDownLoadFileViewModel.downLoadFile( mContext!!, fileName, firmwareUrl ) @@ -738,6 +741,7 @@ class HomeTrackFragment : } if (trackBleDevice.conState == ConState.CONNECTED) { if (isDFUCallback) { + dfuEnd() showToast(R.string.txt_upgrade_success) } mHomePetTrackStateAdapter.notifyItemChanged(4) @@ -876,6 +880,7 @@ class HomeTrackFragment : fun firmwareCheckUpdate() { getBleTrackDeviceBean()?.let { if (BleManager.getInstance().isConnected(it.bleDevice)) { + dfuStart() setFirmwareData(mFirmwareBean) } else { showToast(R.string.tracker_manage_set_ble_unconnect) @@ -883,6 +888,26 @@ class HomeTrackFragment : } } + private fun dfuStart() { + getHomeV2Activity()?.apply { + //保持屏幕常亮 + window?.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) + DfuServiceListenerHelper.registerProgressListener( + mContext, mDeviceDFUViewModel.mDfuProgressListener + ) + } + } + + private fun dfuEnd() { + getHomeV2Activity()?.apply { + //清除屏幕常亮 + window?.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) + DfuServiceListenerHelper.unregisterProgressListener( + mContext, mDeviceDFUViewModel.mDfuProgressListener + ) + } + } + /** * 手动连接/断开设备 */ @@ -986,25 +1011,6 @@ class HomeTrackFragment : } } - override fun onResume() { - super.onResume() - getHomeV2Activity()?.apply { - DfuServiceListenerHelper.registerProgressListener( - mContext, mDeviceDFUViewModel.mDfuProgressListener - ) - } - } - - override fun onPause() { - super.onPause() - getHomeV2Activity()?.apply { - DfuServiceListenerHelper.unregisterProgressListener( - mContext, mDeviceDFUViewModel.mDfuProgressListener - ) - } - } - - override fun onClick(v: View?) { mViewBinding.apply { when (v!!) {