From 0361f47762f9958f2ec91fdb62bfc98de4e162a6 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期一, 14 四月 2025 15:16:17 +0800 Subject: [PATCH] save --- app/src/main/java/com/xianning/driver/ui/main/MainActivity.kt | 74 ++++++++++++++++++++++++++++--------- 1 files changed, 56 insertions(+), 18 deletions(-) diff --git a/app/src/main/java/com/xianning/driver/ui/main/MainActivity.kt b/app/src/main/java/com/xianning/driver/ui/main/MainActivity.kt index b5230fe..6ad9e1a 100644 --- a/app/src/main/java/com/xianning/driver/ui/main/MainActivity.kt +++ b/app/src/main/java/com/xianning/driver/ui/main/MainActivity.kt @@ -6,32 +6,21 @@ import android.net.Uri import android.os.Handler import android.os.Looper -import android.os.Message import android.provider.Settings -import android.util.Log import android.view.Gravity import android.widget.Toast -import androidx.core.app.ActivityCompat -import cn.jpush.android.api.JPushInterface -import cn.jpush.android.api.TagAliasCallback import cn.sinata.rxnetty.NettyClient import cn.sinata.xldutils.utils.* -import com.amap.api.location.AMapLocation -import com.amap.api.location.AMapLocationListener -import com.amap.api.maps.MapsInitializer import com.baidu.location.BDAbstractLocationListener import com.baidu.location.BDLocation import com.baidu.location.LocationClient +import com.example.emanagercar.ui.base.BaseWebActivity import com.xianning.driver.R import com.xianning.driver.base.BaseEvent import com.xianning.driver.base.Const import com.xianning.driver.base.MyApplication import com.xianning.driver.base.MyBaseActivity import com.xianning.driver.base.gaode.AMapKit -import com.xianning.driver.bean.HomeDataBean -import com.xianning.driver.bean.OrderSimpleData -import com.xianning.driver.bean.SelectServerModeBean -import com.xianning.driver.bean.VersionBean import com.xianning.driver.ui.DialogUtil import com.xianning.driver.ui.main.event.MineEventActivity import com.xianning.driver.ui.mine.MineActivity @@ -47,13 +36,17 @@ import com.lzf.easyfloat.enums.SidePattern import com.lzf.easyfloat.interfaces.OnInvokeView import com.tbruyelle.rxpermissions2.RxPermissions +import com.tencent.bugly.crashreport.CrashReport //import com.tencent.bugly.crashreport.CrashReport import com.umeng.commonsdk.UMConfigure import com.umeng.socialize.PlatformConfig +import com.xianning.driver.bean.* import com.xianning.driver.netUtls.* import com.xianning.driver.ui.mine.RechargeActivity +import com.xianning.driver.utils.HtmlUtils import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.app_title.* +import kotlinx.android.synthetic.main.dialog_notice.view.* import kotlinx.android.synthetic.main.dialog_sure_and_del.view.* import org.greenrobot.eventbus.EventBus import org.jetbrains.anko.dip @@ -78,11 +71,10 @@ private var listener:BDAbstractLocationListener? = null private var locationClient:LocationClient? = null + private var isFirst = true override fun initView() { LocationClient.setAgreePrivacy(true) - MapsInitializer.updatePrivacyShow(this,true,true) - MapsInitializer.updatePrivacyAgree(this,true) MyApplication.getInstance()?.initPersionDate() // var packageName = "com.android.providers.downloads"; @@ -125,6 +117,39 @@ callVersion() checkGps() MyApplication.addOrderView(qeeOrderView) + callNotice() + } + + /** + * 获取公告弹窗 + */ + private fun callNotice() { + var map = getMapByAny() + callNet(Api.allert, map) { + var data = gson.fromJson<NoticeBean>(it, NoticeBean::class.java) + if (!data.data.isNullOrEmpty()){ + val first = data.data.first() + if (first.id != CacheKey.getKeyStr("notice")){ + CacheKey.putKeyStr("notice",first.id) + val dialog = DialogUtil.getDialog(this, R.layout.dialog_notice,R.style.dialogFullScreen_not_float) + val view = DialogUtil.getView(dialog) + view.iv_notice.setImageURI(first.imgUrl) + view.tv_notice.text = HtmlUtils.getTextFromHtml(first.content) + view.iv_close.setOnClickListener { + dialog.dismiss() + } + view.cl.setOnClickListener { + var map = getMapByAny() + map["type"] = 5 + callNet(Api.queryByType, map) { + var data = gson.fromJson<AgreeBean>(it, AgreeBean::class.java) + BaseWebActivity.to(mContext, data.data.content, "关于我们", "1") + } + dialog.dismiss() + } + } + } + } } @@ -208,16 +233,26 @@ // map["id"] = CacheKey.getUserId() callNet(Api.queryNewData, map) { var data = gson.fromJson<VersionBean>(it, VersionBean::class.java) - if (data.data.version != "" && data.data.version != Utils.getAppVersion(this)) { + if (data.data.version != "" && data.data.version > Utils.getAppVersion(this)) { if (data.data.mandatory == 2) { DialogUtil.getDelAndSureDialog(this, "有新版本是否更新?", {}, { - DownloadUtil(this).downloadAPK(data.data.url, "咸宁95128约车司机") + RxPermissions(this).request(Manifest.permission.WRITE_EXTERNAL_STORAGE).subscribe{ + if (it){ + DownloadUtil(this).downloadAPK(data.data.url, "咸宁95128约车司机") + }else + toast("缺少文件权限") + } }) } else if (data.data.mandatory == 1) { DialogUtil.getDelAndSureDialog(this, "版本已过时,是否强制升级?", { EventBus.getDefault().post(BaseEvent(BaseEvent.OUT_APP)) }, { - DownloadUtil(this).downloadAPK(data.data.url, "咸宁95128约车司机") + RxPermissions(this).request(Manifest.permission.WRITE_EXTERNAL_STORAGE).subscribe{ + if (it){ + DownloadUtil(this).downloadAPK(data.data.url, "咸宁95128约车司机") + }else + toast("缺少文件权限") + } ToastUtils.showShortToast(this, "后台开始下载,请等待") }) }else{ @@ -231,7 +266,10 @@ override fun onResume() { super.onResume() - mainFragment?.refresh() + if (!isFirst){ + mainFragment?.refresh() + } + isFirst = false } fun beOnDuty(b:Boolean){ -- Gitblit v1.7.1