From e580b8872e684d16490a1c6805fd8592571d80be Mon Sep 17 00:00:00 2001 From: lijia Date: Sat, 20 Apr 2024 12:02:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=89=E8=81=94=E9=9B=86=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- app/src/main/AndroidManifest.xml | 10 +++ .../main/java/com/dahe/gldriver/base/App.kt | 8 +- .../java/com/dahe/gldriver/bean/UserBean.kt | 1 + .../java/com/dahe/gldriver/third/ALProcess.kt | 6 +- .../com/dahe/gldriver/third/JTTProcess.kt | 36 ++++----- .../gldriver/third/PlayerMusicService.java | 76 ++++++++++++++++++ .../java/com/dahe/gldriver/ui/HomeActivity.kt | 14 +++- .../dahe/gldriver/ui/account/LoginActivity.kt | 27 +++++++ .../com/dahe/gldriver/ui/home/HomeFragment.kt | 23 +++++- .../com/dahe/gldriver/ui/mine/MineFragment.kt | 2 +- .../ui/mine/activity/CarTeamManActivity.kt | 6 +- .../ui/mine/activity/SettingActivity.kt | 8 +- .../activity/WaybillAppraiseActivity.kt | 2 +- .../waybill/activity/WaybillDetailActivity.kt | 2 +- .../waybill/activity/WaybillLoadActivity.kt | 2 +- .../activity/WaybillUnlLoadActivity.kt | 2 +- .../ui/waybill/fragment/AllWaybillFragment.kt | 2 +- .../waybill/fragment/CancelWaybillFragment.kt | 2 +- .../waybill/fragment/WaitAppraiseFragment.kt | 2 +- .../ui/waybill/fragment/WaitLoadFragment.kt | 2 +- .../ui/waybill/fragment/WaitUnLoadFragment.kt | 2 +- .../com/dahe/gldriver/utils/OrderUtils.kt | 5 +- .../java/com/dahe/gldriver/utils/SPUtils.kt | 20 ++--- .../java/com/dahe/gldriver/utils/UserUtils.kt | 3 +- app/src/main/res/raw/silent.wma | Bin 0 -> 22939 bytes 26 files changed, 209 insertions(+), 56 deletions(-) create mode 100644 app/src/main/java/com/dahe/gldriver/third/PlayerMusicService.java create mode 100644 app/src/main/res/raw/silent.wma diff --git a/app/build.gradle b/app/build.gradle index 167b9ba..571219a 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -170,7 +170,7 @@ dependencies { implementation 'com.loopj.android:android-async-http:1.4.9' implementation 'com.j256.ormlite:ormlite-android:4.48' implementation 'com.j256.ormlite:ormlite-core:4.48' - compileOnly 'com.github.hotchemi:permissionsdispatcher:2.3.1' + implementation 'com.github.hotchemi:permissionsdispatcher:2.3.1' annotationProcessor 'com.github.hotchemi:permissionsdispatcher-processor:2.3.1' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index e8e37d8..c56f79b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -465,6 +465,16 @@ android:name="com.baidu.lbsapi.API_KEY" android:value="BiRjhNoG2FhrveK48ihjtbK7BNcBD5zt" /> + + + + diff --git a/app/src/main/java/com/dahe/gldriver/base/App.kt b/app/src/main/java/com/dahe/gldriver/base/App.kt index 488df6d..f1e5b11 100644 --- a/app/src/main/java/com/dahe/gldriver/base/App.kt +++ b/app/src/main/java/com/dahe/gldriver/base/App.kt @@ -3,11 +3,13 @@ package com.dahe.gldriver.base import android.app.ActivityManager import android.app.Application import android.app.PendingIntent -import android.app.PendingIntent.* +import android.app.PendingIntent.FLAG_UPDATE_CURRENT +import android.app.PendingIntent.getActivity import android.content.Context import android.content.Intent import android.os.Process import android.util.Log +import anet.channel.util.Utils.context import com.alct.mdp.MDPLocationCollectionManager import com.dahe.gldriver.BuildConfig import com.dahe.gldriver.R @@ -15,6 +17,7 @@ import com.dahe.gldriver.net.Api import com.dahe.gldriver.oss.OssServiceUtil import com.dahe.gldriver.push.PushHelper import com.dahe.gldriver.third.JTTProcess +import com.dahe.gldriver.third.PlayerMusicService import com.dahe.gldriver.third.SPUtil import com.dahe.gldriver.ui.HomeActivity import com.dahe.gldriver.utils.OrderUtils @@ -37,6 +40,7 @@ import javax.net.ssl.SSLContext import javax.net.ssl.TrustManager import javax.net.ssl.X509TrustManager + class App : Application() { override fun onCreate() { super.onCreate() @@ -108,6 +112,8 @@ class App : Application() { if (packageName == getCurrentProcessName(this)) { //Log.e("--使用的测试环境--",BuildConfig.OPEN_API_URL); MDPLocationCollectionManager.initialize(this, BuildConfig.OPEN_AL_URL) + MDPLocationCollectionManager.initServiceProcessProguard(context) // 保活代码 + startService(Intent(this, PlayerMusicService::class.java)) // 保活代码 } //初始化交通厅 diff --git a/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt b/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt index 9f01a7d..b29d43a 100644 --- a/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt +++ b/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt @@ -32,6 +32,7 @@ data class UserBean( var qrcodeUrl :String, var expires_in :Int, var credit :String, + var auditStatus: String="", var isCarCaptain :String,//是否是车队长(0=否,1=是,9=未选择) var contactName :String, var idcardName :String, diff --git a/app/src/main/java/com/dahe/gldriver/third/ALProcess.kt b/app/src/main/java/com/dahe/gldriver/third/ALProcess.kt index 35d87e1..f759065 100644 --- a/app/src/main/java/com/dahe/gldriver/third/ALProcess.kt +++ b/app/src/main/java/com/dahe/gldriver/third/ALProcess.kt @@ -9,6 +9,7 @@ import com.alct.mdp.callback.OnResultListener import com.alct.mdp.model.Identity import com.dahe.gldriver.BuildConfig import com.dahe.gldriver.bean.FqBean +import com.dahe.gldriver.utils.SPUtils import com.dahe.gldriver.utils.SPUtils.Companion.instance import com.google.gson.Gson @@ -38,7 +39,7 @@ class ALProcess { //企业app验证码-测试 private const val APP_KEY_TEXT = "07a6256cad5642138ed6e962a5a157be" fun verification(con: Context?) { - val (_, _, _, _, idcard) = instance.getUserInfo(con) + val userInfo = SPUtils.instance.getUserInfo(con) val idy = Identity() //企业代码 idy.enterpriseCode = if (BuildConfig.isTest) ENTERPRISE_CODE_TEXT else ENTERPRISE_CODE @@ -47,7 +48,8 @@ class ALProcess { //企业app验证码 idy.appKey = if (BuildConfig.isTest) APP_KEY_TEXT else APP_KEY //司机身份证 - idy.driverIdentity = idcard + idy.driverIdentity = userInfo?.idcard +// idy.driverIdentity = "410823197610206636" //idy.setDriverIdentity("410725198311042012"); MDPLocationCollectionManager.register(con, idy, object : OnResultListener { override fun onSuccess() { diff --git a/app/src/main/java/com/dahe/gldriver/third/JTTProcess.kt b/app/src/main/java/com/dahe/gldriver/third/JTTProcess.kt index f0ae8e2..b29d1a9 100644 --- a/app/src/main/java/com/dahe/gldriver/third/JTTProcess.kt +++ b/app/src/main/java/com/dahe/gldriver/third/JTTProcess.kt @@ -71,8 +71,8 @@ object JTTProcess { fun start(con: Context, sob: OrderDetailBean, remark: String?) { val snis = arrayOfNulls(1) val sni = ShippingNoteInfo() - val startWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "1" } - val endWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "2" } + val startWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.first { it.type == "1" } + val endWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.last { it.type == "2" } sni.shippingNoteNumber = sob.orderNum sni.serialNumber = "0000" sni.startLatitude = startWay.latitude.toDouble() @@ -92,9 +92,9 @@ object JTTProcess { LocationOpenApi.start( con, sob.waybillInfo.vehicleNum, - if (SPUtils.instance.getUserInfo(con).idcardName == null) "" else SPUtils.instance.getUserInfo( + if (SPUtils.instance.getUserInfo(con)?.idcardName == null) "" else SPUtils.instance.getUserInfo( con - ).idcardName, + )?.idcardName, remark, snis, object : OnResultListener { @@ -134,9 +134,9 @@ object JTTProcess { LocationOpenApi.send( con, sob.waybillInfo.vehicleNum, - if (SPUtils.instance.getUserInfo(con).idcardName == null) "" else SPUtils.instance.getUserInfo( + if (SPUtils.instance.getUserInfo(con)?.idcardName == null) "" else SPUtils.instance.getUserInfo( con - ).idcardName, + )?.idcardName, remark, snis, object : OnSendResultListener { @@ -156,8 +156,8 @@ object JTTProcess { fun pause(con: Context?, sob: OrderDetailBean, remark: String?) { val snis = arrayOfNulls(1) val sni = ShippingNoteInfo() - val startWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "1" } - val endWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "2" } + val startWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.first { it.type == "1" } + val endWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.last { it.type == "2" } sni.shippingNoteNumber = sob.orderNum sni.serialNumber = "0000" sni.startLatitude = startWay.latitude.toDouble() @@ -172,9 +172,9 @@ object JTTProcess { LocationOpenApi.pause( con, sob.waybillInfo.vehicleNum, - if (SPUtils.instance.getUserInfo(con).idcardName == null) "" else SPUtils.instance.getUserInfo( + if (SPUtils.instance.getUserInfo(con)?.idcardName == null) "" else SPUtils.instance.getUserInfo( con - ).idcardName, + )?.idcardName, remark, snis, object : OnResultListener { @@ -193,8 +193,8 @@ object JTTProcess { fun restart(con: Context?, sob: OrderDetailBean, remark: String?) { val snis = arrayOfNulls(1) val sni = ShippingNoteInfo() - val startWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "1" } - val endWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "2" } + val startWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.first { it.type == "1" } + val endWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.last { it.type == "2" } sni.shippingNoteNumber = sob.orderNum sni.serialNumber = "0000" sni.startLatitude = startWay.latitude.toDouble() @@ -209,9 +209,9 @@ object JTTProcess { LocationOpenApi.restart( con, sob.waybillInfo.vehicleNum, - if (SPUtils.instance.getUserInfo(con).idcardName == null) "" else SPUtils.instance.getUserInfo( + if (SPUtils.instance.getUserInfo(con)?.idcardName == null) "" else SPUtils.instance.getUserInfo( con - ).idcardName, + )?.idcardName, remark, snis, object : OnResultListener { @@ -229,8 +229,8 @@ object JTTProcess { fun stop(con: Context, sob: OrderDetailBean, remark: String?) { val snis = arrayOfNulls(1) val sni = ShippingNoteInfo() - val startWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "1" } - val endWay = sob.orderChildList.filter { it.isPassingPoints!="0" }.first { it.type == "2" } + val startWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.first { it.type == "1" } + val endWay = sob.orderChildList.filter { it.isPassingPoints=="0" }.last { it.type == "2" } sni.shippingNoteNumber = sob.orderNum sni.serialNumber = "0000" sni.startLatitude = startWay.latitude.toDouble() @@ -247,9 +247,9 @@ object JTTProcess { LocationOpenApi.stop( con, sob.waybillInfo.vehicleNum, - if (SPUtils.instance.getUserInfo(con).idcardName == null) "" else SPUtils.instance.getUserInfo( + if (SPUtils.instance.getUserInfo(con)?.idcardName == null) "" else SPUtils.instance.getUserInfo( con - ).idcardName, + )?.idcardName, remark, snis, object : OnResultListener { diff --git a/app/src/main/java/com/dahe/gldriver/third/PlayerMusicService.java b/app/src/main/java/com/dahe/gldriver/third/PlayerMusicService.java new file mode 100644 index 0000000..a4ba3cc --- /dev/null +++ b/app/src/main/java/com/dahe/gldriver/third/PlayerMusicService.java @@ -0,0 +1,76 @@ +package com.dahe.gldriver.third; + +import android.app.Service; +import android.content.Intent; +import android.media.MediaPlayer; +import android.os.IBinder; + +import com.dahe.gldriver.R; + +/** + * @ClassName PlayerMusicService + * @Author john + * @Date 2024/4/19 16:11 + * @Description TODO + */ +public class PlayerMusicService extends Service { + + private MediaPlayer mMediaPlayer; + private boolean normalExit; + + @Override + public IBinder onBind(Intent intent) { + return null; + } + + @Override + public void onCreate() { + super.onCreate(); + normalExit = false; + mMediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.silent); + + if (mMediaPlayer != null) { + mMediaPlayer.setLooping(true); + } + } + + @Override + public int onStartCommand(Intent intent, int flags, int startId) { + new Thread(new Runnable() { + @Override + public void run() { + startPlayMusic(); + } + }).start(); + return START_STICKY; + } + + + private void startPlayMusic() { + if (mMediaPlayer == null) { + mMediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.silent); + + if (mMediaPlayer != null) { + mMediaPlayer.setLooping(true); + mMediaPlayer.start(); + } + } + } + + + private void stopPlayMusic() { + if (mMediaPlayer != null && mMediaPlayer.isPlaying()) { + mMediaPlayer.stop(); + } + } + + @Override + public void onDestroy() { + super.onDestroy(); + stopPlayMusic(); + if (!normalExit) { + Intent intent = new Intent(getApplicationContext(), PlayerMusicService.class); + startService(intent); + } + } +} diff --git a/app/src/main/java/com/dahe/gldriver/ui/HomeActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/HomeActivity.kt index baf160f..9041801 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/HomeActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/HomeActivity.kt @@ -5,24 +5,29 @@ import android.os.Build import android.os.Bundle import android.widget.Toast import androidx.fragment.app.Fragment -import androidx.fragment.app.FragmentStatePagerAdapter import androidx.viewpager.widget.ViewPager -import com.amap.api.location.AMapLocationClient.updatePrivacyAgree -import com.amap.api.location.AMapLocationClient.updatePrivacyShow import com.dahe.gldriver.R import com.dahe.gldriver.adapter.MyHomePagerAdapter import com.dahe.gldriver.bean.TabBean import com.dahe.gldriver.databinding.ActivityHomeBinding import com.dahe.gldriver.event.GoWaybillEvent -import com.dahe.gldriver.event.RefreshEvent +import com.dahe.gldriver.net.BaseObserver +import com.dahe.gldriver.net.DataManager +import com.dahe.gldriver.net.RxHttpCallBack +import com.dahe.gldriver.third.ALProcess import com.dahe.gldriver.ui.home.HomeFragment import com.dahe.gldriver.ui.message.MessageFragment import com.dahe.gldriver.ui.mine.MineFragment import com.dahe.gldriver.ui.waybill.WaybillFragment +import com.dahe.gldriver.utils.UserUtils +import com.dahe.glex.bean.UserBean import com.dahe.mylibrary.base.BaseActivity +import com.dahe.mylibrary.net.CommonResponseBean import com.flyco.tablayout.listener.CustomTabEntity import com.flyco.tablayout.listener.OnTabSelectListener import com.permissionx.guolindev.PermissionX +import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers +import io.reactivex.rxjava3.schedulers.Schedulers import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import java.util.Timer @@ -95,6 +100,7 @@ class HomeActivity : BaseActivity(), OnTabSelectListener, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.ACCESS_COARSE_LOCATION, + Manifest.permission.RECORD_AUDIO, Manifest.permission.ACCESS_BACKGROUND_LOCATION, ) .request { allGranted, grantedList, deniedList -> diff --git a/app/src/main/java/com/dahe/gldriver/ui/account/LoginActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/account/LoginActivity.kt index 18f6f4b..f75fb45 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/account/LoginActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/account/LoginActivity.kt @@ -1,5 +1,6 @@ package com.dahe.gldriver.ui.account +import android.Manifest import android.content.Intent import android.os.Bundle import android.util.Log @@ -21,6 +22,7 @@ import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.ToastUtils +import com.permissionx.guolindev.PermissionX import com.umeng.commonsdk.utils.UMUtils import com.umeng.umverify.UMResultCode import com.umeng.umverify.UMVerifyHelper @@ -78,6 +80,31 @@ class LoginActivity : BaseActivity(), View.OnClickListener override fun initDate() { + getPermissions() + } + + private fun getPermissions() { + PermissionX.init(this) + .permissions( + Manifest.permission.CAMERA, + Manifest.permission.ACCESS_FINE_LOCATION, + Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_EXTERNAL_STORAGE, + Manifest.permission.ACCESS_COARSE_LOCATION, + Manifest.permission.RECORD_AUDIO, + Manifest.permission.ACCESS_BACKGROUND_LOCATION, + ) + .request { allGranted, grantedList, deniedList -> + if (allGranted) { + + } else { + Toast.makeText( + mContext, + "开启权限失败,请在应用设置-权限-定位-始终允许", + Toast.LENGTH_SHORT + ).show() + } + } } override fun onClick(view: View?) { diff --git a/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt index d3dd98d..00772e6 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt @@ -13,17 +13,19 @@ import com.dahe.gldriver.adapter.WaybillAdapter import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.base.WebActivity import com.dahe.gldriver.bean.GridBean -import com.dahe.gldriver.bean.OrderDetailBean import com.dahe.gldriver.databinding.FragmentHomeBinding import com.dahe.gldriver.event.GoWaybillEvent import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack +import com.dahe.gldriver.third.ALProcess import com.dahe.gldriver.ui.home.activity.BusinessActivity import com.dahe.gldriver.ui.mine.activity.PersonInfoActivity import com.dahe.gldriver.ui.waybill.activity.WaybillDetailActivity import com.dahe.gldriver.utils.OrderUtils +import com.dahe.gldriver.utils.UserUtils import com.dahe.glex.bean.OrderBean +import com.dahe.glex.bean.UserBean import com.dahe.glex.bean.UserDetail import com.dahe.mylibrary.base.BaseFragment import com.dahe.mylibrary.callback.RefreshCallBack @@ -31,7 +33,6 @@ import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.ConvertUtils -import com.dahe.mylibrary.utils.ImageLoader import com.permissionx.guolindev.PermissionX import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers @@ -196,6 +197,24 @@ class HomeFragment : BaseFragment(), RefreshCallBack { //执行中运单轨迹上传 OrderUtils.getInstance().upLocation(mContext) + + DataManager.getInstance().getUserInfo() + .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) + .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { + super.onSuccess(t) + if (t == null || t.data == null) + return + UserUtils.instance.updateUser(mContext, t.data) + + //初始化安联 + if (t.data.auditStatus == "100003") + ALProcess.verification(mContext) + + + } + })) + } private fun initRecy() { diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt index 48dabee..492e809 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt @@ -94,7 +94,7 @@ class MineFragment : BaseFragment(), View.OnClickListener, llPerson.setOnClickListener { val userInfo = SPUtils.instance.getUserInfo(mContext) - if (userInfo.isCarCaptain == "1") {//是否是车队长(0=否,1=是,9=未选择) + if (userInfo?.isCarCaptain == "1") {//是否是车队长(0=否,1=是,9=未选择) ActivityUtils.startActivity( mContext, EditCaTeamActivity::class.java, diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt index 02561a8..ed5945a 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt @@ -57,12 +57,12 @@ class CarTeamManActivity : BaseActivity() { mFragments.run { add(DriversManFragment().apply { arguments = Bundle().apply { - putString(AppConfig.ID, SPUtils.instance.getUserInfo(mContext)!!.captainId) + putString(AppConfig.ID, SPUtils.instance.getUserInfo(mContext)?.captainId) } }) add(CarsManFragment().apply { arguments = Bundle().apply { - putString(AppConfig.ID, SPUtils.instance.getUserInfo(mContext)!!.captainId) + putString(AppConfig.ID, SPUtils.instance.getUserInfo(mContext)?.captainId) } }) } @@ -123,7 +123,7 @@ class CarTeamManActivity : BaseActivity() { mContext, EditCaTeamActivity::class.java, Bundle().apply { - putString(AppConfig.ID, userInfo.captainId) + putString(AppConfig.ID, userInfo?.captainId) }) } } diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/SettingActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/SettingActivity.kt index ce0148b..4f34843 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/SettingActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/SettingActivity.kt @@ -8,6 +8,7 @@ import com.dahe.gldriver.push.PushHelper import com.dahe.gldriver.ui.account.LoginActivity import com.dahe.gldriver.utils.CommonPopUtils import com.dahe.gldriver.utils.SPUtils +import com.dahe.gldriver.utils.UserUtils import com.dahe.glex.bean.UserBean import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.callback.PushAliasListener @@ -59,9 +60,10 @@ class SettingActivity : BaseActivity(), View.OnClickList binding.rlTwo.id -> { CommonPopUtils.getInstance() - .showCommCenterPop(mContext, content = "您确定退出当前app么?") { - SPUtils.instance.removeUserToken(mContext) - ActivityUtils.startLoginActivity(mContext,LoginActivity::class.java) + .showCommCenterPop(mContext, content = "您确定退出好运司机端么?") { + UserUtils.instance.loginOut(mContext) +// SPUtils.instance.removeUserToken(mContext) +// ActivityUtils.startLoginActivity(mContext,LoginActivity::class.java) // ActivityUtils.finishAllActivities() } } diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillAppraiseActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillAppraiseActivity.kt index 1aa2fc5..d5bac3d 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillAppraiseActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillAppraiseActivity.kt @@ -64,7 +64,7 @@ class WaybillAppraiseActivity : BaseActivity() { SeeDocActivity::class.java, Bundle().apply { putString(AppConfig.ORDER_ID, orderId) }) } - binding.btnRight.visibility = if (SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") View.GONE else View.VISIBLE + binding.btnRight.visibility = if (SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") View.GONE else View.VISIBLE initRecy() getLocation() binding.run { diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt index 420f833..35137c7 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt @@ -48,7 +48,7 @@ class WaybillDetailActivity : BaseActivity() { var isCap: Boolean = false lateinit var orderDetailInfo: OrderDetailBean override fun initView(savedInstanceState: Bundle?) { - isCap = SPUtils.instance.getUserInfo(mContext).isCarCaptain == "1" + isCap = SPUtils.instance.getUserInfo(mContext)?.isCarCaptain == "1" orderId = intent.extras?.getString(AppConfig.ORDER_ID, "").toString() initRecy() getLocation() diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt index 0815b5b..80cf1f4 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt @@ -67,7 +67,7 @@ class WaybillLoadActivity : BaseActivity() { Bundle().apply { putString(AppConfig.ORDER_ID, orderId) }) } - binding.btnRight.visibility = if (SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") View.GONE else View.VISIBLE + binding.btnRight.visibility = if (SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") View.GONE else View.VISIBLE initRecy() getLocation() diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt index d36fafa..81d1e32 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt @@ -61,7 +61,7 @@ class WaybillUnlLoadActivity : BaseActivity() { SeeDocActivity::class.java, Bundle().apply { putString(AppConfig.ORDER_ID, orderId) }) } - binding.btnRight.visibility = if (SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") View.GONE else View.VISIBLE + binding.btnRight.visibility = if (SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") View.GONE else View.VISIBLE initRecy() getLocation() binding.run { diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/AllWaybillFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/AllWaybillFragment.kt index ba03723..3a60964 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/AllWaybillFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/AllWaybillFragment.kt @@ -63,7 +63,7 @@ class AllWaybillFragment : BaseFragment(), RefreshCa ) adapter = - WaybillListAdapter(SPUtils.instance.getUserInfo(mContext).isCarCaptain == "1") + WaybillListAdapter(SPUtils.instance.getUserInfo(mContext)?.isCarCaptain == "1") adapter as WaybillListAdapter }.apply { // 打开空布局功能 diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt index 56789ea..c8ac1c9 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt @@ -56,7 +56,7 @@ class CancelWaybillFragment : BaseFragment(), Refres Color.TRANSPARENT ) ) - adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") + adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") adapter as WaybillListAdapter }.apply { // 打开空布局功能 diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt index a06c15d..34f55b0 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt @@ -59,7 +59,7 @@ class WaitAppraiseFragment : BaseFragment(), Refresh Color.TRANSPARENT ) ) - adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") + adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") adapter as WaybillListAdapter }.apply { // 打开空布局功能 diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt index b244670..232c589 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt @@ -64,7 +64,7 @@ class WaitLoadFragment : BaseFragment(), RefreshCall Color.TRANSPARENT ) ) - adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") + adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") adapter as WaybillListAdapter }.apply { // 打开空布局功能 diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt index 34126e4..01499fc 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt @@ -59,7 +59,7 @@ class WaitUnLoadFragment : BaseFragment(), RefreshCa Color.TRANSPARENT ) ) - adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext).isCarCaptain=="1") + adapter = WaybillListAdapter(SPUtils.instance.getUserInfo(mContext)?.isCarCaptain=="1") adapter as WaybillListAdapter }.apply { // 打开空布局功能 diff --git a/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt index 9057acc..e06766c 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt @@ -105,7 +105,7 @@ class OrderUtils private constructor() { listener: OnResultListener ) { val userInfo = SPUtils.instance.getUserInfo(context) - if (userInfo.isCarCaptain == "1") { + if (userInfo?.isCarCaptain == "1") { DataManager.getInstance() .selectCarsList(userInfo.captainId) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) @@ -214,7 +214,8 @@ class OrderUtils private constructor() { * @param context Context */ fun upLocation(context: Context) { - if (SPUtils.instance.getUserInfo(context).isCarCaptain == "1")//车队长角色不需要上传轨迹 + val userInfo = SPUtils.instance.getUserInfo(context) + if (userInfo!=null && userInfo.isCarCaptain == "1")//车队长角色不需要上传轨迹 return DataManager.getInstance().orderDetail("") .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) diff --git a/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt index 47c3573..b188076 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt @@ -5,6 +5,7 @@ import com.dahe.gldriver.base.AppConfig import com.dahe.glex.bean.UserBean import com.dahe.mylibrary.net.JsonUtils import com.dahe.mylibrary.utils.BaseSPUtils +import com.google.gson.Gson /** * @ClassName SPUtils2 @@ -36,12 +37,13 @@ class SPUtils private constructor() : BaseSPUtils() { * * @param context */ - fun getUserInfo(context: Context?): UserBean { - return JsonUtils.getInstance() - .fromJson( - BaseSPUtils.get(context, BaseSPUtils.USER_INFO_KEY, "") as String, - UserBean::class.java - ) + fun getUserInfo(context: Context?): UserBean? { + val s = get(context, USER_INFO_KEY, "") as String + if (s.isNullOrEmpty()) + return null + else + return JsonUtils.getInstance() + .fromJson(s, UserBean::class.java) } fun setUserToken(context: Context?, token: String) { @@ -58,11 +60,11 @@ class SPUtils private constructor() : BaseSPUtils() { } fun getIsFirstOpenApp(context: Context): Boolean { - return get(context, AppConfig.IS_FIRST_OPEN, true) as Boolean + return get(context, AppConfig.IS_FIRST_OPEN, true) as Boolean } - fun setIsFirstOpenApp(context: Context,isFirstOpen:Boolean){ - put(context,AppConfig.IS_FIRST_OPEN,isFirstOpen) + fun setIsFirstOpenApp(context: Context, isFirstOpen: Boolean) { + put(context, AppConfig.IS_FIRST_OPEN, isFirstOpen) } diff --git a/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt index aa82b8a..e61d430 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt @@ -24,6 +24,7 @@ class UserUtils private constructor(){ } fun loginOut(context : Context){ + SPUtils.instance.removeUserToken(context) if (null== SPUtils.instance.getUserInfo(context)) return //删除推送别名 @@ -32,7 +33,7 @@ class UserUtils private constructor(){ val intent = Intent(context, LauncherActivity::class.java) intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TASK or Intent.FLAG_ACTIVITY_NEW_TASK context.startActivity(intent) - ToastUtils.showToast(context, "您的账号再异地登录,请重新登录") +// ToastUtils.showToast(context, "您的账号再异地登录,请重新登录") } fun loginIn(context: Context,userBean: UserBean){ diff --git a/app/src/main/res/raw/silent.wma b/app/src/main/res/raw/silent.wma new file mode 100644 index 0000000000000000000000000000000000000000..e10f5ed8f01133671a8b9ecca4de40fb6a9f6f06 GIT binary patch literal 22939 zcmeI3dr;F?7RS#o;Sms(#I;gTiS&mkAOb4NblT-5O%#wptdWQENGuctN(2R6C-N#T zhSg*VSWqjC9Uc`m+ZG?VrbxR+MnTXn>{^=rVIle!-c_%+Bo0{?l>J zW$wKv=iYnHxt}C|@SXeu7n_P|xA%!Z9)>o^xRDz^2l(cIBO^F*r~Tktt$pI!`(SpF zZd7I27C{&+J^eK4$MB0+tLlEAeP(y#7Tbb(!kXNkHOSaa?UT-LWjM3H{vPk~(DcgZT=X*(G8 z&zNha&sT89AXpw(pd8fjHbg+e)G7lj(c*3p1u7_pY|NvANXW-*+i@&}9gvPT=S{@E z0}3D)Jv-3`h=Cv+ciwVv`}UgCTH}Qe+ItOc;{~(PNsR~)0U|&IhyW2F0z`la5CI}U z1c(3;_`eABo*er{;a9{r_nN&p=L;>&*gxPnG9a#h2p?Luw#2tgtqNg2Y=&5fhK;Br ztVe}Gh01{%)dWsQ;F=Vbf?x=MKhckcWv{7LS# ztq0;9h<=wB6b%8`M4GUKn^g;f`o$j^u}-1vA01o>Y~j=V9038iVdiYCQ;F5?!m6cs z6E1f)>KsxCha%q2M>`br2jdx*w?lBufechc)ZmZyO8nzIGAQL=t9g~A5Myy?gHXdM zz=&!-L*$eOBY-n6 zw0cXkNy?w(A~3*7S0U2`w4`X;hUpU7b4iS0%CLk~{-v5>_(DY7$Bg^wy^D0G3ae7X{I^h%_c>uwRqn+!T@L49%gk>LXS-#&AnC9%5C zQW*_(*Je7dFj-xgeU{-u7p6}+@r==g8uXn~H^%`vYv^zn#wkBNt_ftISguRjU`Dr6 z&mPkNnBUa1$2DP$rZ`3?XCJ$P#-ZMzOWFrg=J9BJaBJe%3q7~4QhpxuuW>80RDX5$ z2F9lgvp_nSRHnTa90@Z|W#Kzv8U zc0^oV9CAX5a|T;Ir*%-_lb{UA*x52C(8YWw=8Q#amYylgREidR$u@6v?e8#FXDP=e zU#x(Zn4VteMvba+{eHuO%CI}WbG3(BHr;r-ipw6Fdi#&Q=i}Q(^VOH+mm-><1Qebh z@4l`qS=X6mWjxzm3-acFv7nhf;NvqZt@frQN?#wG3xmB!?*C5Fr_tDz#4S2#P_NOL z!WOmz z9*MxBve_^EZm_}%lr}Z<& zi8HX0)s=$%{c#6ibxAQ8qRu>nZEy!CZ=(VH^=UJ_*9uNv<8UGr70x}P1=Ujgf>0v@M1Tko0U|&I zhyW2F0z`la5P_G0fK7=RLk$L%7$J8fUWpmO-|8&E-yMmhWg_|~@MU>Y5g-CYfCvx)B0vO)z|VkyO^Hdu=aW#0;h$3Cm6*-=Y}5)~iTN4SNF@*fB0vO) a01+SpM1Tko0U|&IhyW2F0z}~DAn+e5DTd?# literal 0 HcmV?d00001