play voice of wear state change.
authorTrillGates <williamtrillgates@gmail.com>
Tue, 3 Aug 2021 07:02:12 +0000 (15:02 +0800)
committerTrillGates <williamtrillgates@gmail.com>
Tue, 3 Aug 2021 07:02:12 +0000 (15:02 +0800)
app/src/main/java/com/ic/temperature/utils/Constants.kt
app/src/main/java/com/ic/temperature/viewmodel/TemperatureViewModel.kt

index a530971..7d23b69 100644 (file)
@@ -2,7 +2,6 @@ package com.ic.temperature.utils
 
 object Constants {
     const val ACTION_ANTI_OFF0: String = "com.ic.ACTION_ANTIOFF"
-
     //integer  eventID =1 脱落, eventID =0 佩戴
     const val KEY_ANTI_EVENT = "eventID"
     const val STATE_ANTI_ON = 0
index 90c7a0e..6e3d68c 100644 (file)
@@ -5,6 +5,8 @@ import android.content.BroadcastReceiver
 import android.content.Context
 import android.content.Intent
 import android.content.IntentFilter
+import android.media.AudioManager
+import android.media.AudioManager.FX_FOCUS_NAVIGATION_DOWN
 import android.os.Handler
 import android.os.Looper
 import android.os.Message
@@ -22,7 +24,7 @@ import com.ic.temperature.utils.Constants.STATE_ANTI_ON
 import java.lang.ref.WeakReference
 
 class TemperatureViewModel() : ViewModel() {
-    
+
     lateinit var mContext: Context
 
     private val repository by lazy {
@@ -280,7 +282,12 @@ class TemperatureViewModel() : ViewModel() {
 
     inner class WristWearStateReceiver : BroadcastReceiver() {
 
+        private var audioManager: AudioManager? = null;
+
         override fun onReceive(context: Context, intent: Intent?) {
+            if (audioManager == null) {
+                audioManager = context.getSystemService(Context.AUDIO_SERVICE) as AudioManager?
+            }
             //如果来了佩戴的广播,判断到没有绑定远程服务的话,那么就绑定吧
             val state = intent!!.getIntExtra(KEY_ANTI_EVENT, STATE_ANTI_NONE)
             IcLog.i(TAG, "on AntiStateChange....$state")
@@ -288,7 +295,10 @@ class TemperatureViewModel() : ViewModel() {
                 IcLog.i(TAG, "state error === > $state")
                 return
             }
-
+            //播放按键音
+            if (audioManager != null) {
+                audioManager?.playSoundEffect(FX_FOCUS_NAVIGATION_DOWN)
+            }
             if (state == STATE_ANTI_OFF) {
                 mCheckTips.value = context!!.getString(R.string.no_wearing_device_tips_text)
                 //脱落了,给出提示