diff --git a/app/src/main/java/com/abbidot/tracker/dialog/DFUNewDialog.kt b/app/src/main/java/com/abbidot/tracker/dialog/DFUNewDialog.kt index bb3e39d..92c10c4 100644 --- a/app/src/main/java/com/abbidot/tracker/dialog/DFUNewDialog.kt +++ b/app/src/main/java/com/abbidot/tracker/dialog/DFUNewDialog.kt @@ -17,7 +17,8 @@ class DFUNewDialog(context: Context) : private var mVersion = "" override fun initView() { - setCanceledOnTouchOutside(false) +// setCanceledOnTouchOutside(false) + setCancelable(false) mViewBinding.apply { btnDialogDfuNewUpgradeNow.setChangeAlphaWhenPress(true) setOnClickListenerViews(tvDialogDfuNewLaterBtn, btnDialogDfuNewDone) diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/account/EmailAddressActivity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/account/EmailAddressActivity.kt index c7ac1cd..4f2ad9c 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/account/EmailAddressActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/account/EmailAddressActivity.kt @@ -10,6 +10,7 @@ import com.abbidot.tracker.base.BaseActivity import com.abbidot.tracker.base.BaseDialog import com.abbidot.tracker.constant.GetResultCallback import com.abbidot.tracker.databinding.ActivityEmailAddressBinding +import com.abbidot.tracker.util.Util import com.abbidot.tracker.util.ViewUtil import com.abbidot.tracker.vm.UserProfileViewModel @@ -25,7 +26,7 @@ class EmailAddressActivity : setTopBarTitle(R.string.txt_email_address) mViewBinding.apply { - setOnClickListenerViews(btnEmailAddressChange) + setOnClickListenerViews(btnEmailAddressChange, tvEmailAddressShow) } } @@ -66,6 +67,9 @@ class EmailAddressActivity : mViewBinding.apply { when (v!!) { btnEmailAddressChange -> startChange() + tvEmailAddressShow -> Util.copyToClipboard( + mContext, tvEmailAddressShow.text.toString() + ) } } } diff --git a/app/src/main/java/com/abbidot/tracker/util/Util.kt b/app/src/main/java/com/abbidot/tracker/util/Util.kt index 0ca65d8..55a0f19 100644 --- a/app/src/main/java/com/abbidot/tracker/util/Util.kt +++ b/app/src/main/java/com/abbidot/tracker/util/Util.kt @@ -1,5 +1,7 @@ package com.abbidot.tracker.util +import android.content.ClipData +import android.content.ClipboardManager import android.content.Context import android.content.Intent import android.content.pm.PackageManager @@ -858,6 +860,16 @@ class Util { } return isControl } + + /** + * 复制内容到剪贴板 + */ + fun copyToClipboard(context: Context, text: String) { + val clipboard = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager + val clip = ClipData.newPlainText("text", text) + clipboard.setPrimaryClip(clip) + } + } /** diff --git a/app/src/main/java/com/abbidot/tracker/vm/DownLoadFileViewModel.kt b/app/src/main/java/com/abbidot/tracker/vm/DownLoadFileViewModel.kt index 15b8eb2..a1cdfad 100644 --- a/app/src/main/java/com/abbidot/tracker/vm/DownLoadFileViewModel.kt +++ b/app/src/main/java/com/abbidot/tracker/vm/DownLoadFileViewModel.kt @@ -16,6 +16,7 @@ import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.delay import kotlinx.coroutines.launch import java.io.File +import androidx.core.net.toUri /** @@ -41,7 +42,7 @@ class DownLoadFileViewModel : ViewModel() { file.delete() } mDownloadManager = context.getSystemService(DOWNLOAD_SERVICE) as DownloadManager - val uri: Uri = Uri.parse(downloadUrl) + val uri = downloadUrl.toUri() val request = DownloadManager.Request(uri) //设置文件类型 request.setMimeType("zip/*") @@ -105,9 +106,7 @@ class DownLoadFileViewModel : ViewModel() { LogUtil.i(path) } val dfuStateBean = DFUStateBean( - context.getString(R.string.txt_down_firmware), - progress.toInt(), - path + context.getString(R.string.txt_down_firmware), progress.toInt(), path ) mDownloadProgressLiveData.postValue(dfuStateBean) }