Explorar el Código

1.添加收到IM消息展示弹窗功能

王鹏鹏 hace 3 años
padre
commit
4b9fa0a188

+ 1 - 0
.idea/misc.xml

@@ -525,6 +525,7 @@
         <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/activity_consultation_request.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/activity_doctor_details.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/activity_payment.xml" value="0.23697916666666666" />
+        <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/item_recommend_doctor.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/home/src/main/res/drawable/bg_results_content.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/home/src/main/res/layout/activity_binding_evaluation.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/home/src/main/res/layout/activity_evaluation.xml" value="0.23697916666666666" />

+ 0 - 17
baselib/src/main/java/com/yingyangfly/baselib/dialog/TaskFragment.kt

@@ -34,9 +34,7 @@ class TaskFragment : DialogFragment(), View.OnTouchListener {
     private var fishImage: AppCompatImageView? = null
     private var tvContent: AppCompatTextView? = null
     private var confirmBtan: AppCompatButton? = null
-//    private var animationDrawable: AnimationDrawable? = null
     private var id = ""
-//    private var playVoice: PlayVoice? = null
     /**
      * 语音合成
      */
@@ -80,8 +78,6 @@ class TaskFragment : DialogFragment(), View.OnTouchListener {
             activity, R.layout.fragment_task, container, 1194, 834
         )
         voicePlayer = VoicePlayer.getInstance(activity)
-//        playVoice = PlayVoice()
-//        playVoice?.setContext(requireActivity())
         findId(rootView)
         init()
         return rootView
@@ -92,11 +88,6 @@ class TaskFragment : DialogFragment(), View.OnTouchListener {
         tvContent = rootView.findViewById(R.id.tvContent)
         confirmBtan = rootView.findViewById(R.id.confirmBtan)
         confirmBtan?.setOnSingleClickListener {
-            //停止动画
-//            fishImage?.clearAnimation()
-//            if (animationDrawable != null) {
-//                animationDrawable?.stop()
-//            }
             onDialogClickListener?.invoke(id)
             dismiss()
         }
@@ -107,13 +98,8 @@ class TaskFragment : DialogFragment(), View.OnTouchListener {
             .asGif()
             .load(R.drawable.fish)
             .into(fishImage!!)
-        //开始动画
-//        fishImage?.setImageResource(R.drawable.anim_loading)
-//        animationDrawable = fishImage?.drawable as AnimationDrawable?
-//        animationDrawable?.start()
         tvContent?.text = taskDesn
         speak(taskDesn)
-//        playVoice?.speak(taskDesn)
     }
 
     /**
@@ -183,9 +169,6 @@ class TaskFragment : DialogFragment(), View.OnTouchListener {
     }
 
     override fun dismiss() {
-//        if (playVoice != null) {
-//            playVoice?.stop()
-//        }
         if (voicePlayer != null) {
             if (voicePlayer!!.isPlaying) {
                 voicePlayer?.stop()

+ 2 - 2
baselib/src/main/res/anim/scale_anim.xml

@@ -8,5 +8,5 @@
     android:pivotY="50%"
     android:repeatCount="800"
     android:repeatMode="reverse"
-    android:toXScale="1.5"
-    android:toYScale="1.5" />
+    android:toXScale="1.3"
+    android:toYScale="1.3" />

+ 11 - 5
healthconsultation/src/main/java/com/yingyang/healthconsultation/activity/HealthConsultationActivity.kt

@@ -5,6 +5,7 @@ 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
@@ -75,11 +76,15 @@ class HealthConsultationActivity :
             recommendDoctorAdapter.setData(doctorBeans)
             recommendDoctorAdapter.onClickListener = { bean, type ->
                 if (TextUtils.equals("doctor", type)) {
-                    JumpUtil.jumpActivityWithUrl(
-                        RouterUrlCommon.doctorDetails,
-                        bean.id,
-                        mContext
-                    )
+                    if(consultationBeans.isNotEmpty()){
+                        "您有正在医疗咨询中,结束问诊后才能购买".toast()
+                    } else {
+                        JumpUtil.jumpActivityWithUrl(
+                            RouterUrlCommon.doctorDetails,
+                            bean.id,
+                            mContext
+                        )
+                    }
                 } else {
                     JumpUtil.jumpActivityWithUrl(
                         RouterUrlCommon.consultationRequest,
@@ -119,6 +124,7 @@ class HealthConsultationActivity :
             super.onRecvC2CCustomMessage(msgID, sender, customData)
             if (customData != null) {
                 val data = String(customData)
+                Log.e("wpp", "-----------------------"+data)
                 if (TextUtils.isEmpty(data).not()) {
                     val messageBean = GsonUtil.GsonToBean(data, MessageBean::class.java)
                     if (messageBean != null && TextUtils.equals("start", messageBean.businessID)) {

+ 44 - 26
home/src/main/java/com/yingyangfly/home/activity/HomeActivity.kt

@@ -16,14 +16,12 @@ import com.tencent.imsdk.v2.V2TIMUserInfo
 import com.yingyang.home.R
 import com.yingyang.home.databinding.ActivityHomeBinding
 import com.yingyangfly.baselib.bean.GetSaveGameRecordBean
+import com.yingyangfly.baselib.bean.MessageBean
 import com.yingyangfly.baselib.bean.Record
 import com.yingyangfly.baselib.db.VoicePlayerBean
 import com.yingyangfly.baselib.dialog.TaskFragment
 import com.yingyangfly.baselib.dialog.TipsDialog
-import com.yingyangfly.baselib.ext.getEndAnimation
-import com.yingyangfly.baselib.ext.getScaleAnimation
-import com.yingyangfly.baselib.ext.show
-import com.yingyangfly.baselib.ext.toast
+import com.yingyangfly.baselib.ext.*
 import com.yingyangfly.baselib.guideview.Guide
 import com.yingyangfly.baselib.guideview.GuideBuilder
 import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
@@ -124,33 +122,35 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>(),
     }
 
     override fun initData() {
-        addSimpleMsgListener()
         initLiveData()
     }
 
     override fun onResume() {
         super.onResume()
-        val stastus = V2TIMManager.getInstance().loginStatus
-        if (V2TIMManager.V2TIM_STATUS_LOGINED != stastus) {
-            //IM未登录
-            getUserSign()
-        }
-        //获取app升级信息
-        selectNewVersion()
-        //获取脑力值和训练时长接口
-        getCountTrain()
-        //获取未读消息数量
-        getCountMyMsg()
-        binding {
-            gameLayout.show(false)
-            interstellarLayout.show(false)
-            effectLayout.show(true)
-            Glide.with(this@HomeActivity)
-                .asGif()
-                .load(R.drawable.fish)
-                .into(fishImage)
+        runOnUiThread {
+            val stastus = V2TIMManager.getInstance().loginStatus
+            if (V2TIMManager.V2TIM_STATUS_LOGINED != stastus) {
+                //IM未登录
+                V2TIMManager.getInstance().removeSimpleMsgListener(simpleMsgListener)
+                getUserSign()
+            }
+            //获取app升级信息
+            selectNewVersion()
+            //获取脑力值和训练时长接口
+            getCountTrain()
+            //获取未读消息数量
+            getCountMyMsg()
+            binding {
+                gameLayout.show(false)
+                interstellarLayout.show(false)
+                effectLayout.show(true)
+                Glide.with(this@HomeActivity)
+                    .asGif()
+                    .load(R.drawable.fish)
+                    .into(fishImage)
+            }
+            LiveEventBusUtil.send(RxBusCodes.FINISHGAME, "")
         }
-        LiveEventBusUtil.send(RxBusCodes.FINISHGAME, "")
     }
 
     /**
@@ -172,6 +172,8 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>(),
         runOnUiThread {
             V2TIMManager.getInstance().login(User.getUserId(), sign, object : V2TIMCallback {
                 override fun onSuccess() {
+                    "IM登陆成功".loge()
+                    addSimpleMsgListener()
                 }
 
                 override fun onError(p0: Int, p1: String?) {
@@ -741,7 +743,23 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>(),
             super.onRecvC2CCustomMessage(msgID, sender, customData)
             if (customData != null) {
                 val data = String(customData)
-                Log.e("wpp", "自定义消息-------------------------" + data)
+                Log.e("wpp", "自定义消息--------------------------" + data)
+//                val messageBean = GsonUtil.GsonToBean(data, MessageBean::class.java)
+//                if (messageBean != null) {
+//                    if (TextUtils.equals("A", messageBean.businessID)) {
+//                        //缴费通知
+//                        LiveEventBusUtil.send(RxBusCodes.SHOWTASKDIALOG, messageBean.data)
+//                    } else if (TextUtils.equals("B", messageBean.businessID)) {
+//                        //系统通知
+//                        LiveEventBusUtil.send(RxBusCodes.SHOWTASKDIALOG, messageBean.data)
+//                    } else if (TextUtils.equals("C", messageBean.businessID)) {
+//                        //报告通知
+//                        LiveEventBusUtil.send(RxBusCodes.SHOWTASKDIALOG, messageBean.data)
+//                    } else if (TextUtils.equals("D", messageBean.businessID)) {
+//                        //理疗通知
+//                        LiveEventBusUtil.send(RxBusCodes.SHOWTASKDIALOG, messageBean.data)
+//                    }
+//                }
             }
         }
 

+ 2 - 0
livebroadcast/src/main/java/com/yingyang/livebroadcast/activity/detail/LiveBroadcastActivity.kt

@@ -3,6 +3,7 @@ package com.yingyang.livebroadcast.activity.detail
 import android.annotation.SuppressLint
 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
@@ -190,6 +191,7 @@ class LiveBroadcastActivity :
             super.onRecvC2CCustomMessage(msgID, sender, customData)
             if (customData != null) {
                 val data = String(customData)
+                Log.e("wpp", "-----------------------"+data)
                 if (TextUtils.isEmpty(data).not()) {
                     val messageBean = GsonUtil.GsonToBean(data, MessageBean::class.java)
                     if (messageBean != null) {

+ 4 - 3
livebroadcast/src/main/res/layout/item_live_broadcast.xml

@@ -14,8 +14,7 @@
     <androidx.constraintlayout.widget.ConstraintLayout
         android:id="@+id/layoutLiveBroadcast"
         android:layout_width="@dimen/divider_522px"
-        android:layout_height="wrap_content"
-        android:minHeight="@dimen/divider_202px"
+        android:layout_height="@dimen/divider_202px"
         android:layout_marginTop="@dimen/divider_30px"
         android:background="@mipmap/bg_data_content">
 
@@ -53,9 +52,11 @@
             android:layout_marginStart="@dimen/divider_20px"
             android:layout_marginTop="@dimen/divider_8px"
             android:layout_marginEnd="@dimen/divider_21px"
+            android:ellipsize="end"
+            android:maxLines="3"
             android:text="@{data.liveDesn}"
             android:textColor="@android:color/white"
-            android:textSize="@dimen/divider_28px"
+            android:textSize="@dimen/divider_22px"
             android:textStyle="bold"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintStart_toEndOf="@+id/headImage"