|
@@ -5,16 +5,15 @@ import android.annotation.SuppressLint
|
|
|
import android.content.Context
|
|
|
import android.os.Bundle
|
|
|
import android.text.TextUtils
|
|
|
-import android.util.Log
|
|
|
import android.view.MotionEvent
|
|
|
import android.view.View
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
import com.hjq.permissions.OnPermissionCallback
|
|
|
import com.hjq.permissions.XXPermissions
|
|
|
+import com.tencent.imsdk.v2.V2TIMAdvancedMsgListener
|
|
|
import com.tencent.imsdk.v2.V2TIMConversation
|
|
|
import com.tencent.imsdk.v2.V2TIMManager
|
|
|
-import com.tencent.imsdk.v2.V2TIMSimpleMsgListener
|
|
|
-import com.tencent.imsdk.v2.V2TIMUserInfo
|
|
|
+import com.tencent.imsdk.v2.V2TIMMessage
|
|
|
import com.tencent.qcloud.tuicore.TUIConstants
|
|
|
import com.tencent.qcloud.tuicore.TUICore
|
|
|
import com.tencent.qcloud.tuicore.TUILogin
|
|
@@ -112,29 +111,36 @@ class HealthConsultationActivity :
|
|
|
override fun initData() {
|
|
|
successfulPurchase()
|
|
|
//消息接受监听
|
|
|
- V2TIMManager.getInstance().addSimpleMsgListener(simpleMsgListener)
|
|
|
+ V2TIMManager.getMessageManager().addAdvancedMsgListener(simpleMsgListener)
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 自定义消息监听
|
|
|
*/
|
|
|
- private var simpleMsgListener: V2TIMSimpleMsgListener = object : V2TIMSimpleMsgListener() {
|
|
|
- override fun onRecvC2CCustomMessage(
|
|
|
- msgID: String?,
|
|
|
- sender: V2TIMUserInfo?,
|
|
|
- customData: ByteArray?
|
|
|
- ) {
|
|
|
- super.onRecvC2CCustomMessage(msgID, sender, customData)
|
|
|
- if (customData != null) {
|
|
|
- val data = String(customData)
|
|
|
- if (TextUtils.isEmpty(data).not()) {
|
|
|
- val messageBean = GsonUtil.GsonToBean(data, MessageBean::class.java)
|
|
|
- if (messageBean != null && TextUtils.equals("start", messageBean.businessID)) {
|
|
|
- if (consultationBeans.isNotEmpty()) {
|
|
|
- consultationBeans.forEach {
|
|
|
- it.status = "2"
|
|
|
+ private var simpleMsgListener: V2TIMAdvancedMsgListener = object : V2TIMAdvancedMsgListener() {
|
|
|
+ override fun onRecvNewMessage(msg: V2TIMMessage?) {
|
|
|
+ super.onRecvNewMessage(msg)
|
|
|
+ runOnUiThread {
|
|
|
+ if (msg != null) {
|
|
|
+ if (msg.elemType == V2TIMMessage.V2TIM_ELEM_TYPE_CUSTOM) {
|
|
|
+ val customElem = msg.customElem
|
|
|
+ if (customElem != null && customElem.data != null) {
|
|
|
+ val data = String(customElem.data)
|
|
|
+ if (TextUtils.isEmpty(data).not()) {
|
|
|
+ val messageBean = GsonUtil.GsonToBean(data, MessageBean::class.java)
|
|
|
+ if (messageBean != null && TextUtils.equals(
|
|
|
+ "start",
|
|
|
+ messageBean.businessID
|
|
|
+ )
|
|
|
+ ) {
|
|
|
+ if (consultationBeans.isNotEmpty()) {
|
|
|
+ consultationBeans.forEach {
|
|
|
+ it.status = "2"
|
|
|
+ }
|
|
|
+ consultationAdapter.setData(consultationBeans)
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- consultationAdapter.setData(consultationBeans)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -274,7 +280,7 @@ class HealthConsultationActivity :
|
|
|
|
|
|
override fun onDestroy() {
|
|
|
runOnUiThread {
|
|
|
- V2TIMManager.getInstance().removeSimpleMsgListener(simpleMsgListener)
|
|
|
+ V2TIMManager.getMessageManager().removeAdvancedMsgListener(simpleMsgListener)
|
|
|
}
|
|
|
super.onDestroy()
|
|
|
}
|