From 3d631dbadf98f3f77c6e955cb36219217ef73ab5 Mon Sep 17 00:00:00 2001 From: 唐浩 <15928265276@163.com> Date: 星期二, 09 九月 2025 12:56:48 +0800 Subject: [PATCH] change by tanghao --- app/src/main/java/com/ziang/driver/ui/main/VoiceOrderFragment.kt | 71 ++++++++++++++++++++++++++--------- 1 files changed, 53 insertions(+), 18 deletions(-) diff --git a/app/src/main/java/com/ziang/driver/ui/main/VoiceOrderFragment.kt b/app/src/main/java/com/ziang/driver/ui/main/VoiceOrderFragment.kt index 52ab3aa..7666d14 100644 --- a/app/src/main/java/com/ziang/driver/ui/main/VoiceOrderFragment.kt +++ b/app/src/main/java/com/ziang/driver/ui/main/VoiceOrderFragment.kt @@ -12,6 +12,8 @@ import com.ziang.driver.utils.AudioRecoderUtils import kotlinx.android.synthetic.main.dialog_voice_order.* import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode import org.jetbrains.anko.longToast import org.jetbrains.anko.startActivity @@ -37,50 +39,68 @@ } val fromList by lazy { - intent?.getBooleanExtra("fromList",false)?:false + intent?.getBooleanExtra("fromList", false) ?: false } val needPlayRing by lazy { - intent?.getBooleanExtra("needPlayRing",true)?:true + intent?.getBooleanExtra("needPlayRing", true) ?: true } - lateinit var time: CountDownTimer - private val audioRecoderUtils by lazy { AudioRecoderUtils() } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + EventBus.getDefault().register(this) var strBtn = "抢单" if (type == 2) { strBtn = "确定" } time = timeOver((timeDown!!.toLong() * 1000L)) { if (it == 0) { - audioRecoderUtils.stopPlayMusic() finish() } else { tv_sure.text = strBtn + it.toString() + "S" } } tv_close.clickDelay { - audioRecoderUtils.stopPlayMusic() finish() } tv_sure.clickDelay { showGetOrder() } - if (needPlayRing) - AudioRecoderUtils().startplayMusic(this,Const.voiceOrder) - iv_voice.postDelayed({ - audioRecoderUtils.startplayMusic(this,if (fromList) audio else MyApplication.voiceOrder?.audioLinkUrl) - EventBus.getDefault().post(BaseEvent(BaseEvent.APP_LOG,"实际播放路径:${if (fromList) audio else MyApplication.voiceOrder?.audioLinkUrl}")) - },2000) - iv_voice.clickDelay { - audioRecoderUtils.startplayMusic(this,if (fromList) audio else MyApplication.voiceOrder?.audioLinkUrl) + if (needPlayRing){ + AudioRecoderUtils.getInstance().startplayMusic(this, Const.voiceOrder) + if (fromList){ + AudioRecoderUtils.getInstance().startplayMusic(this, audio) + }else{ + AudioRecoderUtils.getInstance().startplayMusic(this, MyApplication.voiceOrder?.audioLinkUrl) + } } - EventBus.getDefault().post(BaseEvent(BaseEvent.APP_LOG,"弹窗订单id:$orderId ,声音路径:$audio")) + + iv_voice.postDelayed({ + if (!isFinishing){ +// AudioRecoderUtils.getInstance().startplayMusic( +// this, +// if (fromList) audio else MyApplication.voiceOrder?.audioLinkUrl +// ) + } + EventBus.getDefault().post( + BaseEvent( + BaseEvent.APP_LOG, + "实际播放路径:${if (fromList) audio else MyApplication.voiceOrder?.audioLinkUrl}" + ) + ) + }, 500) + iv_voice.clickDelay { + AudioRecoderUtils.getInstance().startplayMusic( + this, + if (fromList) audio else MyApplication.voiceOrder?.audioLinkUrl + ) + } + EventBus.getDefault() + .post(BaseEvent(BaseEvent.APP_LOG, "弹窗订单id:$orderId ,声音路径:$audio")) } override fun initView() { @@ -93,6 +113,8 @@ override fun onDestroy() { super.onDestroy() + EventBus.getDefault().unregister(this) +// AudioRecoderUtils.getInstance().stopPlayMusic() time.cancel() } @@ -107,12 +129,25 @@ map["orderType"] = orderType callNet(this, Api.grabOrder, map) { Toast.create(this).show("抢单成功") - EventBus.getDefault().post(BaseEvent(BaseEvent.APP_LOG,"抢单成功的id:$id")) + EventBus.getDefault().post(BaseEvent(BaseEvent.APP_LOG, "抢单成功的id:$id")) startActivity<CallOrderActivity>( "orderId" to id, - "orderType" to orderType) - audioRecoderUtils.stopPlayMusic() + "orderType" to orderType + ) + finish() } } + + @Subscribe(threadMode = ThreadMode.MAIN) + open fun onEventMainThread(event: BaseEvent) { + when (event.code) { + BaseEvent.ORDER_GRAB_EVENT -> { + if (orderId == event.msg) + finish() + } + } + } + + } \ No newline at end of file -- Gitblit v1.7.1