|
@@ -1,37 +1,37 @@
|
|
|
package com.develop.setting.ui
|
|
|
|
|
|
-import android.app.Activity
|
|
|
import android.app.PendingIntent
|
|
|
import android.content.*
|
|
|
import android.content.pm.PackageInstaller
|
|
|
-import android.content.pm.PackageManager
|
|
|
-import android.net.Uri
|
|
|
import android.os.Build
|
|
|
import android.os.Bundle
|
|
|
-import android.os.ResultReceiver
|
|
|
import android.provider.Settings
|
|
|
-import android.util.DisplayMetrics
|
|
|
-import android.util.Log
|
|
|
+import android.view.Gravity
|
|
|
import android.view.LayoutInflater
|
|
|
import android.view.View
|
|
|
+import android.view.WindowManager
|
|
|
+import android.widget.EditText
|
|
|
+import android.widget.FrameLayout
|
|
|
import android.widget.LinearLayout
|
|
|
-import android.widget.Toast
|
|
|
+import android.widget.PopupWindow
|
|
|
import android.widget.RelativeLayout
|
|
|
-import androidx.core.content.FileProvider
|
|
|
+import android.widget.TextView
|
|
|
+import android.widget.Toast
|
|
|
+import androidx.databinding.ViewDataBinding
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
import com.azhon.appupdate.listener.OnDownloadListener
|
|
|
import com.blankj.utilcode.util.AppUtils
|
|
|
-import com.develop.base.R
|
|
|
+import com.blankj.utilcode.util.KeyboardUtils
|
|
|
+import com.blankj.utilcode.util.KeyboardUtils.hideSoftInput
|
|
|
import com.develop.base.ext.dimenRes
|
|
|
-import com.develop.base.ext.getAppCode
|
|
|
import com.develop.base.ext.getSN
|
|
|
import com.develop.base.ext.isBrand036I
|
|
|
import com.develop.base.ext.isBrand054A
|
|
|
import com.develop.base.ext.isNightTheme
|
|
|
import com.develop.base.ext.setVisible
|
|
|
-import com.develop.base.ext.toJson
|
|
|
import com.develop.base.ext.updateText
|
|
|
import com.develop.base.util.GlobalToast
|
|
|
+import com.develop.base.widgets.CommonPopupWindow
|
|
|
import com.develop.common.dialog.CancelConfirmDialog
|
|
|
import com.develop.common.dialog.CommonDialog
|
|
|
import com.develop.common.dialog.PwdDialog
|
|
@@ -41,6 +41,7 @@ import com.develop.common.router.Screens
|
|
|
import com.develop.common.ui.CommonBVMActivity
|
|
|
import com.develop.common.utils.AppVersionUtil
|
|
|
import com.develop.common.utils.UpdateUtil
|
|
|
+import com.develop.common.widget.PwdLayout
|
|
|
import com.develop.setting.databinding.ActivityAboutBinding
|
|
|
import com.develop.setting.ui.viewmodel.AboutViewModel
|
|
|
import com.kuyuntech.cofarcooking.device.sdk.constant.core.DevStatus
|
|
@@ -48,7 +49,6 @@ import com.kuyuntech.cofarcooking.device.sdk.eventbus.event.DevStatusEvent
|
|
|
import com.kuyuntech.cofarcooking.device.sdk.util.core.CofarSDK
|
|
|
import org.greenrobot.eventbus.Subscribe
|
|
|
import java.io.*
|
|
|
-import java.nio.charset.Charset
|
|
|
|
|
|
|
|
|
@Route(path = Screens.Setting.ABOUT)
|
|
@@ -84,6 +84,131 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
RecipeUpdateDialog()
|
|
|
}
|
|
|
|
|
|
+ //由于PwdDilaog的数字输入不了,估换了pop来紫萼
|
|
|
+ private val pwdPopupWindow by lazy {
|
|
|
+ CommonPopupWindow.ViewBuilder<PwdLayout>()
|
|
|
+ .width(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .height(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .outsideTouchable(false).focusable(true).alpha(0.8f)
|
|
|
+ .view(PwdLayout(this)).intercept { popupWindow, view ->
|
|
|
+ }.onShowBefore { popupWindow, view ->
|
|
|
+ var titile = view.findViewById<TextView>(com.develop.common.R.id.pwd_title)
|
|
|
+ titile.text = getString(com.develop.common.R.string.password)
|
|
|
+ var edit = view.findViewById<EditText>(com.develop.common.R.id.pwd_et_pwd)
|
|
|
+ var yes = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_yes)
|
|
|
+ var cancel = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_cancel)
|
|
|
+ yes.setOnClickListener {
|
|
|
+ confirmPwd(edit.text.toString(), popupWindow)
|
|
|
+ edit.setText("")
|
|
|
+ }
|
|
|
+ cancel.setOnClickListener {
|
|
|
+ popupWindow.dismiss()
|
|
|
+ }
|
|
|
+
|
|
|
+ }.onDismissListener {
|
|
|
+ }.build<ViewDataBinding>(this)
|
|
|
+ }
|
|
|
+ private val appPopupWindow by lazy {
|
|
|
+ CommonPopupWindow.ViewBuilder<PwdLayout>()
|
|
|
+ .width(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .height(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .outsideTouchable(false).focusable(true).alpha(0.8f)
|
|
|
+ .view(PwdLayout(this)).intercept { popupWindow, view ->
|
|
|
+ }.onShowBefore { popupWindow, view ->
|
|
|
+ var titile = view.findViewById<TextView>(com.develop.common.R.id.pwd_title)
|
|
|
+ titile.text = getString(com.develop.common.R.string.password)
|
|
|
+ var edit = view.findViewById<EditText>(com.develop.common.R.id.pwd_et_pwd)
|
|
|
+ var yes = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_yes)
|
|
|
+ var cancel = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_cancel)
|
|
|
+ yes.setOnClickListener {
|
|
|
+ if ("12345678".equals(edit.text.toString())) {
|
|
|
+ if (isAdbDebuggingEnabled(this)) {
|
|
|
+ Toast.makeText(this, "adb disable", Toast.LENGTH_SHORT).show()
|
|
|
+ toggleAdbDebugging(this, false)
|
|
|
+ } else {
|
|
|
+ Toast.makeText(this, "adb enable", Toast.LENGTH_SHORT).show()
|
|
|
+ toggleAdbDebugging(this, true)
|
|
|
+ }
|
|
|
+
|
|
|
+ popupWindow.dismiss()
|
|
|
+
|
|
|
+ } else {
|
|
|
+ GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
+ }
|
|
|
+ edit.setText("")
|
|
|
+ }
|
|
|
+ cancel.setOnClickListener {
|
|
|
+ popupWindow.dismiss()
|
|
|
+ }
|
|
|
+ }.onDismissListener {
|
|
|
+ }.build<ViewDataBinding>(this)
|
|
|
+ }
|
|
|
+
|
|
|
+ private val tvFirmPopupWindow by lazy {
|
|
|
+ CommonPopupWindow.ViewBuilder<PwdLayout>()
|
|
|
+ .width(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .height(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .outsideTouchable(false).focusable(true).alpha(0.8f)
|
|
|
+ .view(PwdLayout(this)).intercept { popupWindow, view ->
|
|
|
+ }.onShowBefore { popupWindow, view ->
|
|
|
+ var titile = view.findViewById<TextView>(com.develop.common.R.id.pwd_title)
|
|
|
+ titile.text = getString(com.develop.common.R.string.password)
|
|
|
+ var edit = view.findViewById<EditText>(com.develop.common.R.id.pwd_et_pwd)
|
|
|
+ var yes = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_yes)
|
|
|
+ var cancel = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_cancel)
|
|
|
+ yes.setOnClickListener {
|
|
|
+ if ("12345678".equals(edit.text.toString())) {
|
|
|
+ togglePointerLocation(this)
|
|
|
+ popupWindow.dismiss()
|
|
|
+ } else {
|
|
|
+ GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
+ }
|
|
|
+ edit.setText("")
|
|
|
+ }
|
|
|
+ cancel.setOnClickListener {
|
|
|
+ popupWindow.dismiss()
|
|
|
+ }
|
|
|
+
|
|
|
+ }.onDismissListener {
|
|
|
+ }.build<ViewDataBinding>(this)
|
|
|
+ }
|
|
|
+
|
|
|
+ private val devPopupWindow by lazy {
|
|
|
+ CommonPopupWindow.ViewBuilder<PwdLayout>()
|
|
|
+ .width(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .height(FrameLayout.LayoutParams.MATCH_PARENT)
|
|
|
+ .outsideTouchable(false).focusable(true).alpha(0.8f)
|
|
|
+ .view(PwdLayout(this)).intercept { popupWindow, view ->
|
|
|
+ }.onShowBefore { popupWindow, view ->
|
|
|
+ var titile = view.findViewById<TextView>(com.develop.common.R.id.pwd_title)
|
|
|
+ titile.text = getString(com.develop.common.R.string.password)
|
|
|
+ var edit = view.findViewById<EditText>(com.develop.common.R.id.pwd_et_pwd)
|
|
|
+ var yes = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_yes)
|
|
|
+ var cancel = view.findViewById<TextView>(com.develop.common.R.id.pwd_tv_cancel)
|
|
|
+ yes.setOnClickListener {
|
|
|
+ if ("12345678".equals(edit.text.toString())) {
|
|
|
+ // 创建启动目标活动的Intent
|
|
|
+ val intent = Intent()
|
|
|
+ intent.component = ComponentName(
|
|
|
+ "com.zavier.androidrk3326functiontest",
|
|
|
+ "com.zavier.androidrk3326functiontest.MainFunctionActivity"
|
|
|
+ )
|
|
|
+ // 启动目标活动
|
|
|
+ startActivity(intent)
|
|
|
+ popupWindow.dismiss()
|
|
|
+ } else {
|
|
|
+ GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
+ }
|
|
|
+ edit.setText("")
|
|
|
+ }
|
|
|
+ cancel.setOnClickListener {
|
|
|
+ popupWindow.dismiss()
|
|
|
+ }
|
|
|
+
|
|
|
+ }.onDismissListener {
|
|
|
+ }.build<ViewDataBinding>(this)
|
|
|
+ }
|
|
|
+
|
|
|
@Subscribe
|
|
|
fun onDevStateEvent(event: DevStatusEvent) {
|
|
|
GlobalDevEvent.globalWeightEvent(event)
|
|
@@ -189,46 +314,9 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
weightAlignCount++
|
|
|
if (weightAlignCount >= 7) {
|
|
|
weightAlignCount = 0
|
|
|
-
|
|
|
- //2023年06月29日14:16:18 处理密码弹出
|
|
|
- val pwdDialog = PwdDialog()
|
|
|
- pwdDialog.title = getString(com.develop.common.R.string.password)
|
|
|
- pwdDialog.showDialog(supportFragmentManager, "pwdDialog")
|
|
|
- pwdDialog.onDialogClickListener = object : PwdDialog.OnDialogClickListener {
|
|
|
-
|
|
|
- override fun onConfirm(pwd: String) {
|
|
|
- if ("12345678".equals(pwd)) {
|
|
|
- pwdDialog.removeSelf()
|
|
|
- cancelConfirmDialog.title =
|
|
|
- getString(com.develop.common.R.string.change_lang_tips)
|
|
|
- cancelConfirmDialog.showCancel = false
|
|
|
- cancelConfirmDialog.onDialogClickListener =
|
|
|
- object : CancelConfirmDialog.OnDialogClickListener {
|
|
|
- override fun onConfirm() {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- override fun onCancel() {
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- if (CofarSDK.devInfo().runningStatus == DevStatus.RUNNING) {
|
|
|
- cancelConfirmDialog.showDialog(supportFragmentManager, "confirm")
|
|
|
- } else {
|
|
|
- //进入称重标定模式
|
|
|
- CofarSDK.startWeightAlign()
|
|
|
- GlobalDevEvent.weight = true
|
|
|
- }
|
|
|
-
|
|
|
- } else {
|
|
|
- GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- override fun onCancel() {
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
+ pwdPopupWindow.inputMethodMode = PopupWindow.INPUT_METHOD_NEEDED
|
|
|
+ pwdPopupWindow.softInputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
|
|
|
+ pwdPopupWindow.showAtLocation(binding.aboutLayout, Gravity.CENTER, 0, 0)
|
|
|
|
|
|
|
|
|
}
|
|
@@ -304,32 +392,9 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
adbCount++
|
|
|
if (adbCount >= 7) {
|
|
|
adbCount = 0
|
|
|
-
|
|
|
- val ctx = this
|
|
|
- //2023年06月29日14:16:18 处理密码弹出
|
|
|
- val pwdDialog = PwdDialog()
|
|
|
- pwdDialog.title = getString(com.develop.common.R.string.password)
|
|
|
- pwdDialog.showDialog(supportFragmentManager, "pwdDialog")
|
|
|
- pwdDialog.onDialogClickListener = object : PwdDialog.OnDialogClickListener {
|
|
|
-
|
|
|
- override fun onConfirm(pwd: String) {
|
|
|
- if ("12345678".equals(pwd)) {
|
|
|
- if (isAdbDebuggingEnabled(ctx)) {
|
|
|
- Toast.makeText(ctx, "adb disable", Toast.LENGTH_SHORT).show()
|
|
|
- toggleAdbDebugging(ctx, false)
|
|
|
- } else {
|
|
|
- Toast.makeText(ctx, "adb enable", Toast.LENGTH_SHORT).show()
|
|
|
- toggleAdbDebugging(ctx, true)
|
|
|
- }
|
|
|
- } else {
|
|
|
- GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- override fun onCancel() {
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
+ appPopupWindow.inputMethodMode = PopupWindow.INPUT_METHOD_NEEDED
|
|
|
+ appPopupWindow.softInputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
|
|
|
+ appPopupWindow.showAtLocation(binding.aboutLayout, Gravity.CENTER, 0, 0)
|
|
|
|
|
|
|
|
|
}
|
|
@@ -341,25 +406,9 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
tpCount = 0
|
|
|
|
|
|
|
|
|
- val ctx = this
|
|
|
- //2023年06月29日14:16:18 处理密码弹出
|
|
|
- val pwdDialog = PwdDialog()
|
|
|
- pwdDialog.title = getString(com.develop.common.R.string.password)
|
|
|
- pwdDialog.showDialog(supportFragmentManager, "pwdDialog")
|
|
|
- pwdDialog.onDialogClickListener = object : PwdDialog.OnDialogClickListener {
|
|
|
-
|
|
|
- override fun onConfirm(pwd: String) {
|
|
|
- if ("12345678".equals(pwd)) {
|
|
|
- togglePointerLocation(ctx)
|
|
|
- } else {
|
|
|
- GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- override fun onCancel() {
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
+ tvFirmPopupWindow.inputMethodMode = PopupWindow.INPUT_METHOD_NEEDED
|
|
|
+ tvFirmPopupWindow.softInputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
|
|
|
+ tvFirmPopupWindow.showAtLocation(binding.aboutLayout, Gravity.CENTER, 0, 0)
|
|
|
|
|
|
|
|
|
}
|
|
@@ -373,32 +422,9 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
if (testCount >= 7) {
|
|
|
testCount = 0
|
|
|
|
|
|
- //2023年06月29日14:16:18 处理密码弹出
|
|
|
- val pwdDialog = PwdDialog()
|
|
|
- pwdDialog.title = getString(com.develop.common.R.string.password)
|
|
|
- pwdDialog.showDialog(supportFragmentManager, "pwdDialog")
|
|
|
- pwdDialog.onDialogClickListener = object : PwdDialog.OnDialogClickListener {
|
|
|
-
|
|
|
- override fun onConfirm(pwd: String) {
|
|
|
- if ("12345678".equals(pwd)) {
|
|
|
- // 创建启动目标活动的Intent
|
|
|
- val intent = Intent()
|
|
|
- intent.component = ComponentName(
|
|
|
- "com.zavier.androidrk3326functiontest",
|
|
|
- "com.zavier.androidrk3326functiontest.MainFunctionActivity"
|
|
|
- )
|
|
|
-
|
|
|
- // 启动目标活动
|
|
|
- startActivity(intent)
|
|
|
- } else {
|
|
|
- GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- override fun onCancel() {
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
+ devPopupWindow.inputMethodMode = PopupWindow.INPUT_METHOD_NEEDED
|
|
|
+ devPopupWindow.softInputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
|
|
|
+ devPopupWindow.showAtLocation(binding.aboutLayout, Gravity.CENTER, 0, 0)
|
|
|
|
|
|
|
|
|
}
|
|
@@ -406,7 +432,7 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
|
|
|
binding.tvAppName.text = "FoodCooking_Android"
|
|
|
var appName = AppUtils.getAppVersionName()
|
|
|
- var (mode , code,version) = appName.split(".")
|
|
|
+ var (mode, code, version) = appName.split(".")
|
|
|
// var appCodeName = code+mode + "_V"+ getAppCode()+"_"+version
|
|
|
// binding.tvAppVersion.text = appCodeName
|
|
|
binding.tvAppVersion.text = "v${AppUtils.getAppVersionName()}"
|
|
@@ -482,6 +508,34 @@ class AboutActivity : CommonBVMActivity<ActivityAboutBinding, AboutViewModel>()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private fun confirmPwd(pwd: String, popupWindow: PopupWindow) {
|
|
|
+ if ("12345678".equals(pwd)) {
|
|
|
+ popupWindow.dismiss()
|
|
|
+ cancelConfirmDialog.title =
|
|
|
+ getString(com.develop.common.R.string.change_lang_tips)
|
|
|
+ cancelConfirmDialog.showCancel = false
|
|
|
+ cancelConfirmDialog.onDialogClickListener =
|
|
|
+ object : CancelConfirmDialog.OnDialogClickListener {
|
|
|
+ override fun onConfirm() {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ override fun onCancel() {
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ if (CofarSDK.devInfo().runningStatus == DevStatus.RUNNING) {
|
|
|
+ cancelConfirmDialog.showDialog(supportFragmentManager, "confirm")
|
|
|
+ } else {
|
|
|
+ //进入称重标定模式
|
|
|
+ CofarSDK.startWeightAlign()
|
|
|
+ GlobalDevEvent.weight = true
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ GlobalToast.showToast(getString(com.develop.common.R.string.password_uncorrect))
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
fun togglePointerLocation(context: Context) {
|
|
|
val currentSetting = Settings.System.getInt(context.contentResolver, "pointer_location", 0)
|