From 29d5da918a1f4a7683d1b66bd57bf6ef6e4774cd Mon Sep 17 00:00:00 2001 From: wlh <646507849@qq.com> Date: Sat, 3 Feb 2024 11:22:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=AD=E5=BB=BA365-=E4=BA=8C=E6=9C=9F?= =?UTF-8?q?=E5=BC=80=E5=8F=91-=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zj365/dc/activity/CalorieAnalyzeAct.kt | 56 ++++++++++- .../com/zj365/dc/activity/DeviceActiveAct.kt | 45 ++++++--- .../dc/activity/OneKeyBinderDeviceAct.kt | 45 ++++++--- .../dc/fragment/DynamicManagementFrag.kt | 12 ++- .../java/com/zj365/dc/fragment/MineFrag.kt | 13 ++- .../com/zj365/dc/vm/DynamicManagementVm.kt | 4 +- .../main/java/com/xty/base/act/BaseVmAct.kt | 21 +--- config.gradle | 3 +- mine/build.gradle | 2 + .../main/java/com/zj365/mime/act/AboutAct.kt | 3 +- .../com/zj365/mime/act/BaseInfoChangeAct.kt | 96 +++++++++++++++++-- .../java/com/zj365/mime/act/DevInfoAct.kt | 33 +++++-- 12 files changed, 257 insertions(+), 76 deletions(-) diff --git a/app/src/main/java/com/zj365/dc/activity/CalorieAnalyzeAct.kt b/app/src/main/java/com/zj365/dc/activity/CalorieAnalyzeAct.kt index 1445784..b2e8788 100644 --- a/app/src/main/java/com/zj365/dc/activity/CalorieAnalyzeAct.kt +++ b/app/src/main/java/com/zj365/dc/activity/CalorieAnalyzeAct.kt @@ -1,5 +1,6 @@ package com.zj365.dc.activity +import android.Manifest import android.content.Intent import android.view.LayoutInflater import android.widget.TextView @@ -16,9 +17,11 @@ import com.xty.common.picture.PictureUtils import com.zj365.dc.databinding.ActCalorieAnalyzeBinding import com.zj365.dc.vm.DietManagementVm import com.zj365.health.R +import com.zj365.mime.weight.FactorySettingDialog +import pub.devrel.easypermissions.EasyPermissions @Route(path = ARouterUrl.CALORIE_ANALYZE) -class CalorieAnalyzeAct : BaseVmAct() { +class CalorieAnalyzeAct : BaseVmAct() , EasyPermissions.PermissionCallbacks { val binding by lazy { ActCalorieAnalyzeBinding.inflate(layoutInflater) } @@ -76,12 +79,44 @@ class CalorieAnalyzeAct : BaseVmAct() { } tvTakePhoto.setOnClickListener { - PictureUtils.openTheCamera(this, PictureMimeType.ofImage()) + if(EasyPermissions.hasPermissions(this, + Manifest.permission.CAMERA, + Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_EXTERNAL_STORAGE)){ + PictureUtils.openTheCamera(this, PictureMimeType.ofImage()) + }else{ + FactorySettingDialog( + this, + "中健365需要相机存储权限,以便您上传图片分析菜谱" + ) { + EasyPermissions.requestPermissions(this,"", + 0x00012, + Manifest.permission.CAMERA, + Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_EXTERNAL_STORAGE) + }.show() + + } + dialog.dismiss() } tvChoosePhotoAlbum.setOnClickListener { - PictureUtils.openCamera(this, PictureMimeType.ofImage(),9) + if(EasyPermissions.hasPermissions(this, + Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STORAGE)){ + PictureUtils.openCamera(this, PictureMimeType.ofImage(),9) + }else{ + FactorySettingDialog( + this, + "中健365需要相机存储权限,以便您上传图片分析菜谱" + ) { + EasyPermissions.requestPermissions(this,"", + 0x00011, + Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STORAGE) + }.show() + + } + dialog.dismiss() } @@ -116,4 +151,19 @@ class CalorieAnalyzeAct : BaseVmAct() { } } } + + override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { + when(requestCode){ + 0x00012->{ + PictureUtils.openTheCamera(this, PictureMimeType.ofImage()) + } + 0x00011->{ + PictureUtils.openCamera(this, PictureMimeType.ofImage(),9) + } + } + + } + + override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { + } } \ No newline at end of file diff --git a/app/src/main/java/com/zj365/dc/activity/DeviceActiveAct.kt b/app/src/main/java/com/zj365/dc/activity/DeviceActiveAct.kt index d4e4c6e..86c3f0b 100644 --- a/app/src/main/java/com/zj365/dc/activity/DeviceActiveAct.kt +++ b/app/src/main/java/com/zj365/dc/activity/DeviceActiveAct.kt @@ -37,6 +37,7 @@ import com.xuexiang.xqrcode.XQRCode import com.zj365.dc.databinding.ActDeviceActiveBinding import com.zj365.dc.model.ScanInfoBean import com.zj365.dc.vm.BasicInfoVm +import com.zj365.health.weight.DialogTip import com.zj365.health.weight.SignDialog import com.zj365.mime.weight.FactorySettingDialog import com.zj365.mime.weight.NoticeSettingDialog @@ -51,7 +52,7 @@ import pub.devrel.easypermissions.EasyPermissions */ @SuppressLint("ObsoleteSdkInt") @Route(path = ARouterUrl.DEVICE_ACTIVE) -class DeviceActiveAct : BaseVmAct() { +class DeviceActiveAct : BaseVmAct() , EasyPermissions.PermissionCallbacks ,EasyPermissions.RationaleCallbacks{ val binding by lazy { ActDeviceActiveBinding.inflate(layoutInflater) } override fun setLayout() = binding.root @@ -248,21 +249,19 @@ class DeviceActiveAct : BaseVmAct() { com.zj365.health.R.style.XQRCodeTheme_Custom ) }else{ - EasyPermissions.requestPermissions(this,"", - 0x00011, - Manifest.permission.CAMERA) + DialogTip( + this, + "中健365需要相机权限,以便您使用扫一扫功能" + ) { + EasyPermissions.requestPermissions(this,"", + 0x00011, + Manifest.permission.CAMERA) + }.show() + } } - override fun onSuccess(requestCode: Int) { - super.onSuccess(requestCode) - XQRCodeAct.start( - this@DeviceActiveAct, - XQRCodeAct.QRCODE_AGREEMENT, - com.zj365.health.R.style.XQRCodeTheme_Custom - ) - } /** * 隐私协议 @@ -525,4 +524,26 @@ class DeviceActiveAct : BaseVmAct() { super.onBackPressed() } } + + override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { + XQRCodeAct.start( + this@DeviceActiveAct, + XQRCodeAct.QRCODE_AGREEMENT, + com.zj365.health.R.style.XQRCodeTheme_Custom + ) + } + + override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { + } + + override fun onRationaleAccepted(requestCode: Int) { + XQRCodeAct.start( + this@DeviceActiveAct, + XQRCodeAct.QRCODE_AGREEMENT, + com.zj365.health.R.style.XQRCodeTheme_Custom + ) + } + + override fun onRationaleDenied(requestCode: Int) { + } } \ No newline at end of file diff --git a/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt b/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt index 888806d..1a84bdc 100644 --- a/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt +++ b/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt @@ -17,11 +17,12 @@ import com.zj365.dc.databinding.ActBinderDeviceOneKeyBinding import com.zj365.dc.model.ScanInfoBean import com.zj365.dc.vm.OneKeyBinderDeviceVm import com.zj365.health.R +import com.zj365.health.weight.DialogTip import org.greenrobot.eventbus.EventBus import pub.devrel.easypermissions.EasyPermissions @Route(path = ARouterUrl.ONE_KEY_DEVICE_ACTIVE) -class OneKeyBinderDeviceAct : BaseVmAct() { +class OneKeyBinderDeviceAct : BaseVmAct() , EasyPermissions.PermissionCallbacks ,EasyPermissions.RationaleCallbacks{ val binding by lazy { ActBinderDeviceOneKeyBinding.inflate(layoutInflater) } override fun liveObserver() { @@ -62,19 +63,17 @@ class OneKeyBinderDeviceAct : BaseVmAct() { R.style.XQRCodeTheme_Custom ) }else{ - EasyPermissions.requestPermissions(this,"", - 0x00011, - Manifest.permission.CAMERA) + DialogTip( + this, + "中健365需要相机权限,以便您使用扫一扫功能" + ) { + EasyPermissions.requestPermissions(this,"", + 0x00011, + Manifest.permission.CAMERA) + }.show() + } } - override fun onSuccess(requestCode: Int) { - super.onSuccess(requestCode) - XQRCodeAct.start( - this@OneKeyBinderDeviceAct, - XQRCodeAct.QRCODE_AGREEMENT, - R.style.XQRCodeTheme_Custom - ) - } override fun setLayout() = binding.root @@ -111,4 +110,26 @@ class OneKeyBinderDeviceAct : BaseVmAct() { } } } + + override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { + XQRCodeAct.start( + this@OneKeyBinderDeviceAct, + XQRCodeAct.QRCODE_AGREEMENT, + R.style.XQRCodeTheme_Custom + ) + } + + override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { + } + + override fun onRationaleAccepted(requestCode: Int) { + XQRCodeAct.start( + this@OneKeyBinderDeviceAct, + XQRCodeAct.QRCODE_AGREEMENT, + R.style.XQRCodeTheme_Custom + ) + } + + override fun onRationaleDenied(requestCode: Int) { + } } \ No newline at end of file diff --git a/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt b/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt index 09895ff..f16ead0 100644 --- a/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt +++ b/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt @@ -61,6 +61,7 @@ import com.zj365.dc.databinding.FragDynamicManagementBinding import com.zj365.dc.vm.DynamicManagementVm import com.zj365.health.vm.ReportVm import com.zj365.health.weight.DialogTip +import com.zj365.mime.weight.FactorySettingDialog import com.zj365.mime.weight.NoticeSettingDialog import io.reactivex.Observable import io.reactivex.Observer @@ -500,10 +501,15 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission } }else{ + FactorySettingDialog( + requireContext(), + "中健365需要定位权限,以便您获取天气信息" + ) { + EasyPermissions.requestPermissions(this,"获取天气信息需要申请定位权限", + 0x00022, + Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION); + }.show() - EasyPermissions.requestPermissions(this,"获取天气信息需要申请定位权限", - 0x00022, - Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION); } } diff --git a/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt b/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt index 8c2369a..ed93cb1 100644 --- a/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt +++ b/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt @@ -34,6 +34,7 @@ import com.zj365.health.weight.DialogTip import com.zj365.health.weight.DialogTipNew import com.zj365.mime.act.DevInfoAct import com.zj365.mime.vm.SettingVm +import com.zj365.mime.weight.FactorySettingDialog import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode @@ -461,9 +462,15 @@ class MineFrag : BaseVmFrag() , EasyPermissions.PermissionCallbacks{ Manifest.permission.CALL_PHONE)){ startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) }else{ - EasyPermissions.requestPermissions(this,"", - 0x00011, - Manifest.permission.CALL_PHONE) + FactorySettingDialog( + requireContext(), + "中健365需要拨打电话权限,以便您联系客服功能" + ) { + EasyPermissions.requestPermissions(this,"", + 0x00011, + Manifest.permission.CALL_PHONE) + }.show() + } } } diff --git a/app/src/main/java/com/zj365/dc/vm/DynamicManagementVm.kt b/app/src/main/java/com/zj365/dc/vm/DynamicManagementVm.kt index d5343ef..d1bc6f0 100644 --- a/app/src/main/java/com/zj365/dc/vm/DynamicManagementVm.kt +++ b/app/src/main/java/com/zj365/dc/vm/DynamicManagementVm.kt @@ -595,13 +595,13 @@ class DynamicManagementVm : BaseVm() { statusNS = 1 contentNS = "建模中" mTimeNS = if (uricAcidData.time.isNullOrEmpty()) { - "${milliseconds2String(uricAcidData.time)}:00" + "${milliseconds2String(uricAcidData.time)}" } else if (uricAcidData.time.contains("-")) { uricAcidData.time } else { "${ milliseconds2String(uricAcidData.time) - }:00" + }" } } diff --git a/base/src/main/java/com/xty/base/act/BaseVmAct.kt b/base/src/main/java/com/xty/base/act/BaseVmAct.kt index 67f6233..a3293c9 100644 --- a/base/src/main/java/com/xty/base/act/BaseVmAct.kt +++ b/base/src/main/java/com/xty/base/act/BaseVmAct.kt @@ -17,7 +17,7 @@ import com.xty.common.weight.LoadingView import org.greenrobot.eventbus.EventBus import pub.devrel.easypermissions.EasyPermissions -abstract class BaseVmAct: IBaseAct() , EasyPermissions.PermissionCallbacks ,EasyPermissions.RationaleCallbacks { +abstract class BaseVmAct: IBaseAct() { lateinit var mViewModel:V val loadingView by lazy { LoadingView.Builder(this).setCancelable(true).cteated() } @@ -50,23 +50,4 @@ abstract class BaseVmAct: IBaseAct() , EasyPermissions.PermissionCallb abstract fun liveObserver() open fun deleteData(){} - - open fun onSuccess(requestCode: Int) {} - override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { - LogUtils.e("BaseVmAct","onPermissionsGranted${perms.size}") - onSuccess(requestCode) - } - - override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { - LogUtils.e("BaseVmAct","onPermissionsDenied${perms.size}") - } - - - override fun onRationaleAccepted(requestCode: Int) { - LogUtils.e("BaseVmAct","onRationaleAccepted") - } - - override fun onRationaleDenied(requestCode: Int) { - LogUtils.e("BaseVmAct","onRationaleDenied") - } } \ No newline at end of file diff --git a/config.gradle b/config.gradle index 7dbdf00..17dbca7 100644 --- a/config.gradle +++ b/config.gradle @@ -23,7 +23,7 @@ ext { url = [ - + releaseTime: String.valueOf(new Date().format("HHmmss")), //正式环境 /*debug_url : "https://app.zhongjian365.com/app/", release_url: "https://app.zhongjian365.com/app/", @@ -37,6 +37,7 @@ ext { h5_debug_url : "http://testbuilt.zhongjian365.com/", h5_release_url : "http://testbuilt.zhongjian365.com/" + ] image_preifx = [ diff --git a/mine/build.gradle b/mine/build.gradle index 3280f00..86b7547 100644 --- a/mine/build.gradle +++ b/mine/build.gradle @@ -38,6 +38,7 @@ android { buildConfigField("String","h5url","\"${url.h5_release_url}\"") buildConfigField("Boolean","isRelease",String.valueOf(true)) + buildConfigField("String","releaseTime","\"${url.releaseTime}\"") minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } @@ -47,6 +48,7 @@ android { buildConfigField("Boolean","isRelease",String.valueOf(false)) buildConfigField("String", "image_prefix","\"${imagePrefix.debug_url}\"") + buildConfigField("String","releaseTime","\"${url.releaseTime}\"") } } compileOptions { diff --git a/mine/src/main/java/com/zj365/mime/act/AboutAct.kt b/mine/src/main/java/com/zj365/mime/act/AboutAct.kt index 46df3ff..377673a 100644 --- a/mine/src/main/java/com/zj365/mime/act/AboutAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/AboutAct.kt @@ -10,6 +10,7 @@ import com.xty.common.arouter.RouteManager import com.xty.common.getImageUrl import com.xty.common.setImage import com.xty.common.util.CommonToastUtils +import com.zj365.mime.BuildConfig import com.zj365.mime.R import com.zj365.mime.databinding.ActAboutBinding import com.zj365.mime.vm.AboutVm @@ -35,7 +36,7 @@ class AboutAct: BaseVmAct() { binding.title.mIvBack.setOnClickListener { finish() } binding.title.mTvTitle.text = getString(R.string.about) - binding.mVersion.text="版本号: V${packageManager.getPackageInfo(this.packageName,0).versionName}" + binding.mVersion.text="版本号: V${packageManager.getPackageInfo(this.packageName,0).versionName}(${BuildConfig.releaseTime})" binding.tvUserPrivate.setOnClickListener { bundle.clear() diff --git a/mine/src/main/java/com/zj365/mime/act/BaseInfoChangeAct.kt b/mine/src/main/java/com/zj365/mime/act/BaseInfoChangeAct.kt index 12bf467..de49d67 100644 --- a/mine/src/main/java/com/zj365/mime/act/BaseInfoChangeAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/BaseInfoChangeAct.kt @@ -3,6 +3,7 @@ package com.zj365.mime.act import android.Manifest import android.annotation.SuppressLint import android.content.Intent +import android.os.Build import android.os.Handler import android.os.Message import android.text.Editable @@ -29,6 +30,7 @@ import com.xty.common.TimeUtils import com.xty.common.aMapUtils.AmapInit import com.xty.common.arouter.ARouterUrl import com.xty.common.arouter.RouteManager +import com.xty.common.bracelet.getBluePermission import com.xty.common.bracelet.isGpsOpen import com.xty.common.event.MyInfoEvent import com.xty.common.picture.PictureUtils @@ -41,6 +43,7 @@ import com.xty.common.weight.AreaSelectDialog import com.zj365.mime.R import com.zj365.mime.databinding.ActBaseInfoChangeBinding import com.zj365.mime.vm.BaseInfoVm +import com.zj365.mime.weight.FactorySettingDialog import org.greenrobot.eventbus.EventBus import org.json.JSONArray import org.json.JSONObject @@ -51,7 +54,7 @@ import java.util.regex.Pattern * 激活信息修改 */ @Route(path = ARouterUrl.BASE_INFO_CHANGE) -class BaseInfoChangeAct : BaseVmAct(){ +class BaseInfoChangeAct : BaseVmAct() , EasyPermissions.PermissionCallbacks ,EasyPermissions.RationaleCallbacks{ val binding by lazy { ActBaseInfoChangeBinding.inflate(layoutInflater) } override fun setLayout() = binding.root @@ -158,12 +161,18 @@ class BaseInfoChangeAct : BaseVmAct(){ timeSelect.startDate?.set(1922, 0, 1) binding.mImage.setOnClickListener { if(EasyPermissions.hasPermissions(this, - Manifest.permission.CAMERA)){ + Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STORAGE)){ PictureUtils.openCamera(this@BaseInfoChangeAct) }else{ - EasyPermissions.requestPermissions(this,"", - 0x00011, - Manifest.permission.CAMERA) + FactorySettingDialog( + this, + "中健365需要相机存储权限,以便您完善用户的基本信息" + ) { + EasyPermissions.requestPermissions(this,"", + 0x00011, + Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STORAGE) + }.show() + } } @@ -652,9 +661,16 @@ class BaseInfoChangeAct : BaseVmAct(){ } }else{ - EasyPermissions.requestPermissions(this,"获取天气信息需要申请定位权限", - 0x00022, - Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION); + + FactorySettingDialog( + this, + "获取当前所属地区需要申请定位权限" + ) { + EasyPermissions.requestPermissions(this,"获取当前所属地区需要申请定位权限", + 0x00022, + Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION) + }.show() + } } @@ -667,9 +683,36 @@ class BaseInfoChangeAct : BaseVmAct(){ } - override fun onSuccess(requestCode: Int) { - super.onSuccess(requestCode) + override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { + LogUtils.e("BaseInfoChangeAct"," onPermissionsGranted onSuccess${requestCode}") + if(requestCode == 0x00011){ + PictureUtils.openCamera(this@BaseInfoChangeAct) + }else{ + AmapInit.startLocation(this) { + LogUtils.e("DynamicManagementFrag","${it.city}") + MMkvHelper.put(Const.LONGITUDE,it.longitude) + MMkvHelper.put(Const.LATITUDE,it.latitude) + MMkvHelper.put(Const.PROVINCE,it.province) + MMkvHelper.put(Const.CITY,it.city) + MMkvHelper.put(Const.DISTRICT,it.district) + + open_province = MMkvHelper.getString(Const.PROVINCE) //表示省 + provincey = MMkvHelper.getString(Const.PROVINCE) //表示省 + open_city =MMkvHelper.getString(Const.CITY) //市 + city = MMkvHelper.getString(Const.CITY) //市 + open_area = MMkvHelper.getString(Const.DISTRICT) //区 + district = MMkvHelper.getString(Const.DISTRICT) //区 + binding.mArea.text = "$open_province $open_city $open_area" + + } + } + } + override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { + LogUtils.e("BaseInfoChangeAct","onPermissionsDenied${requestCode}") + } + + override fun onRationaleAccepted(requestCode: Int) { LogUtils.e("BaseInfoChangeAct","onSuccess${requestCode}") if(requestCode == 0x00011){ PictureUtils.openCamera(this@BaseInfoChangeAct) @@ -694,4 +737,37 @@ class BaseInfoChangeAct : BaseVmAct(){ } } + override fun onRationaleDenied(requestCode: Int) { + LogUtils.e("BaseInfoChangeAct"," onPermissionsGranted onRationaleDenied${requestCode}") + + } + + + /* override fun onSuccess(requestCode: Int) { + super.onSuccess(requestCode) + + LogUtils.e("BaseInfoChangeAct","onSuccess${requestCode}") + if(requestCode == 0x00011){ + PictureUtils.openCamera(this@BaseInfoChangeAct) + }else{ + AmapInit.startLocation(this) { + LogUtils.e("DynamicManagementFrag","${it.city}") + MMkvHelper.put(Const.LONGITUDE,it.longitude) + MMkvHelper.put(Const.LATITUDE,it.latitude) + MMkvHelper.put(Const.PROVINCE,it.province) + MMkvHelper.put(Const.CITY,it.city) + MMkvHelper.put(Const.DISTRICT,it.district) + + open_province = MMkvHelper.getString(Const.PROVINCE) //表示省 + provincey = MMkvHelper.getString(Const.PROVINCE) //表示省 + open_city =MMkvHelper.getString(Const.CITY) //市 + city = MMkvHelper.getString(Const.CITY) //市 + open_area = MMkvHelper.getString(Const.DISTRICT) //区 + district = MMkvHelper.getString(Const.DISTRICT) //区 + binding.mArea.text = "$open_province $open_city $open_area" + + } + } + }*/ + } \ No newline at end of file diff --git a/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt b/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt index 386c786..27a6008 100644 --- a/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt @@ -43,7 +43,7 @@ import pub.devrel.easypermissions.EasyPermissions * 设备解绑 设备信息 */ @Route(path = ARouterUrl.DEV_INFO) -class DevInfoAct : BaseVmAct() { +class DevInfoAct : BaseVmAct() , EasyPermissions.PermissionCallbacks ,EasyPermissions.RationaleCallbacks{ val binding by lazy { ActDevInfoBinding.inflate(layoutInflater) } override fun setLayout() = binding.root @@ -114,9 +114,15 @@ class DevInfoAct : BaseVmAct() { Manifest.permission.CALL_PHONE)){ startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) }else{ - EasyPermissions.requestPermissions(this@DevInfoAct,"", - 0x00011, - Manifest.permission.CALL_PHONE) + FactorySettingDialog( + this@DevInfoAct, + "中健365需要拨打电话权限,以便您联系客服功能" + ) { + EasyPermissions.requestPermissions(this@DevInfoAct,"", + 0x00011, + Manifest.permission.CALL_PHONE) + }.show() + } } @@ -156,11 +162,6 @@ class DevInfoAct : BaseVmAct() { } - override fun onSuccess(requestCode: Int) { - super.onSuccess(requestCode) - startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) - } - override fun liveObserver() { mViewModel.unbindLive.observe(this) { user!!.bluetooth = "" @@ -210,4 +211,18 @@ class DevInfoAct : BaseVmAct() { } } + override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { + startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) + } + + override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { + } + + override fun onRationaleAccepted(requestCode: Int) { + startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) + } + + override fun onRationaleDenied(requestCode: Int) { + } + } \ No newline at end of file