美文网首页Android开发
接入声网音视频SDK-计时器和金币不足倒计时

接入声网音视频SDK-计时器和金币不足倒计时

作者: 你的益达233 | 来源:发表于2022-05-06 11:27 被阅读0次

一、前言

声网音视频SDK是没有计时的api,所以还得自己做,
计时开始时刻:拨打方监听到对方加入频道开始计时,接听方加入频道成功后开始计时

二、关键计时代码

用的是Chronometer控件,如果对这个控件属性的朋友,就可以不用往下看了。

布局代码:

<Chronometer
        android:id="@+id/ch_chat_audio_call_accepting_time"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="@dimen/sp_18"
        android:textStyle="bold"
        android:textColor="@color/white"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:text ="00 : 23"
        android:visibility="gone"
        />

java参考代码

if (startCallBean.type == AUDIO_TYPE){
            mBinding.chChatAudioCallAcceptingTime.visibility = View.VISIBLE
            mBinding.chChatAudioCallAcceptingTime.base =  SystemClock.elapsedRealtime() 
            mBinding.chChatAudioCallAcceptingTime.start()
            //拨打方才检查金币
            if (isCallOutGoing){
                mBinding.chChatAudioCallAcceptingTime.setOnChronometerTickListener {
                    dealChatMediaCheckGold(it.base,startCallBean.mediaId)
                }
            }

        }

有关计时器的基本用法:

1、setBase(): 用于设置计时器的起始时间

2、setFormat():用于设置显示时间的格式

3、start(): 用于指定计时开始

4、stop(): 用于指定停止计时

5、setOnChronometerTickListener(): 用于为计时器绑定事件监听器,当计时器改变时触发监听器

获取经过了多长时间

val secondCall = (SystemClock.elapsedRealtime() - chronometerBase)/1000  //得到s

相关文章

网友评论

    本文标题:接入声网音视频SDK-计时器和金币不足倒计时

    本文链接:https://www.haomeiwen.com/subject/epgayrtx.html