weizhengliang пре 3 година
родитељ
комит
1cfe87e4d9

+ 2 - 2
nursehome/src/main/java/com/wdkl/ncs/android/component/nursehome/activity/NurseHomeActivity.kt

@@ -1457,7 +1457,7 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
                         if (SettingConfig.getTtsMode(this) == SettingConfig.TTS_ON) {
                             SpeechUtil.getInstance().addSpeech("您有新的探视请求", false)
                         } else {
-                            RingPlayHelper.playRingTone(activity, R.raw.incoming_call_ring2, false)
+                            RingPlayHelper.playRingTone(activity, R.raw.ring_tone, true)
                         }
                     } else if (tcpModel.action == TcpAction.VideoAction.CANCEL) {
                         if (Constants.interactionId == interactionVO.id) {
@@ -1539,7 +1539,7 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
                         val frameName = interaction.fromFrameFullName.replace("-", "")
                         SpeechUtil.getInstance().addSpeech(frameName + "呼叫", false)
                     } else {
-                        RingPlayHelper.playRingTone(activity, R.raw.incoming_call_ring2, false)
+                        RingPlayHelper.playRingTone(activity, R.raw.ring_tone, true)
                     }
                 }
                 EventBus.getDefault().post(MessageEvent(0, Constants.EVENT_REFRESH_CALL_LIST))

+ 14 - 0
nursehome/src/main/java/com/wdkl/ncs/android/component/nursehome/util/RingPlayHelper.java

@@ -2,12 +2,23 @@ package com.wdkl.ncs.android.component.nursehome.util;
 
 import android.content.Context;
 import android.media.AudioManager;
+import android.os.Handler;
+import android.os.Looper;
+import android.os.Message;
 
 import com.wdkl.core.voip.AsyncPlayer;
 
 public class RingPlayHelper {
 
     private static AsyncPlayer ringPlayer;
+    private final static Handler handler = new Handler(Looper.getMainLooper()) {
+        @Override
+        public void handleMessage(Message msg) {
+            if (ringPlayer != null) {
+                ringPlayer.stop();
+            }
+        }
+    };
 
     public static void playRingTone(Context context, int res, boolean loop) {
         if (ringPlayer == null) {
@@ -16,10 +27,13 @@ public class RingPlayHelper {
 
         if (!ringPlayer.isPlay()) {
             ringPlayer.play(context, res, loop, AudioManager.STREAM_MUSIC);
+            handler.removeCallbacksAndMessages(null);
+            handler.sendEmptyMessageDelayed(10, 30000);
         }
     }
 
     public static void stopRingTone() {
+        handler.removeCallbacksAndMessages(null);
         if (ringPlayer != null) {
             ringPlayer.stop();
         }

BIN
nursehome/src/main/res/raw/ring_tone.mp3