release V415
authorsnickersun <scy@incartech.cn>
Tue, 12 May 2020 11:20:14 +0000 (19:20 +0800)
committersnickersun <scy@incartech.cn>
Tue, 12 May 2020 11:20:14 +0000 (19:20 +0800)
添加listen的静音控制,但是还有很多bug,
1、音量最小还是有声音,需要修改NV才行。
2、挂断的时候音量恢复暂时无法延后,会有嘟嘟的声音。
最直接的办法就是给Speaker mute。但是暂时实现不了。
考虑到这样逻辑复杂,其实有个便捷的方法是,拨通前把speaker切换到receiver或者earphone(这两个实际不存在),挂断后再切回。这样就没有声音了。

app/release/ICSer_V413_2005091221_release.apk [deleted file]
app/release/ICSer_V415_2005121112_release.apk [new file with mode: 0644]
app/src/main/java/com/enqualcomm/support/service/SilentManager.java
app/src/main/java/com/enqualcomm/support/utils/ICAudioManager.java
app/version_code.properties

diff --git a/app/release/ICSer_V413_2005091221_release.apk b/app/release/ICSer_V413_2005091221_release.apk
deleted file mode 100644 (file)
index 63b3a2b..0000000
Binary files a/app/release/ICSer_V413_2005091221_release.apk and /dev/null differ
diff --git a/app/release/ICSer_V415_2005121112_release.apk b/app/release/ICSer_V415_2005121112_release.apk
new file mode 100644 (file)
index 0000000..4d1b88a
Binary files /dev/null and b/app/release/ICSer_V415_2005121112_release.apk differ
index db64a9f..0322442 100644 (file)
@@ -104,6 +104,7 @@ public class SilentManager extends AbstractInvokeHandlerService {
 //          }\r
           if(ICAudioManager.needMute==true)\r
           {\r
+            ICAudioManager.restoreVolumn(mContext); //2秒后恢复音量\r
             Observable.timer(2000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
               public void call(Long param1Long) {\r
                 ICAudioManager.restoreVolumn(mContext); //2秒后恢复音量\r
@@ -124,6 +125,12 @@ public class SilentManager extends AbstractInvokeHandlerService {
           if(ICAudioManager.needMute==true)\r
           {\r
             ICAudioManager.setVolumnMute(mContext);\r
+            Observable.timer(2000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
+              public void call(Long param1Long) {\r
+                ICAudioManager.setVolumnMute(mContext); //2秒后恢复音量\r
+              }\r
+            });\r
+\r
           }\r
           break;\r
         case 2://接电话\r
@@ -132,6 +139,11 @@ public class SilentManager extends AbstractInvokeHandlerService {
           if(ICAudioManager.needMute==true)\r
           {\r
             ICAudioManager.setVolumnMute(mContext);\r
+            Observable.timer(2000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
+              public void call(Long param1Long) {\r
+                ICAudioManager.setVolumnMute(mContext); //2秒后恢复音量\r
+              }\r
+            });\r
           }\r
 \r
       }\r
index f572501..9fb9294 100644 (file)
@@ -9,41 +9,24 @@ public class ICAudioManager {
 
     private static int saved_volumn = 0;
     public static boolean needMute = false;
-    private static int route = 0;
 
     public static void setVolumnMute(Context context) {
         AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
         ICLogger.i("======setVolumnMute");
-        saved_volumn = audioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL);
-
-        route=audioManager.getRouting(AudioManager.MODE_IN_COMMUNICATION);
-        ICLogger.i("======getRouteMODE_IN_COMMUNICATION "+route);
-        route=audioManager.getRouting(AudioManager.MODE_IN_CALL);
-        ICLogger.i("======getRouteMODE_IN_CALL "+route);
-        route=audioManager.getRouting(AudioManager.MODE_CURRENT);
-        ICLogger.i("======getRouteMODE_CURRENT "+route);
-        route=audioManager.getRouting(AudioManager.MODE_NORMAL);
-        ICLogger.i("======getRouteMODE_NORMAL "+route);
-        audioManager.setRouting(AudioManager.MODE_IN_COMMUNICATION,AudioManager.ROUTE_HEADSET,0);
-
-        Intent intent=new Intent();
-        intent.setAction(Intent.ACTION_HEADSET_PLUG);
-        intent.putExtra("microphone", 1);
-
-        context.sendBroadcast(intent);
+        saved_volumn = audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL);
+
+        audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,0,0);
+
 //        SimSignalUtil.SetRingMode(context, AudioManager.RINGER_MODE_SILENT, false);
 //        CloseSpeaker(context);//
 
     }
 
     public static void restoreVolumn(Context context) {
-        ICLogger.i("======restoreVolumn");
+        ICLogger.i("======restoreVolumn "+saved_volumn);
         AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
-        audioManager.setRouting(AudioManager.MODE_IN_COMMUNICATION,AudioManager.ROUTE_SPEAKER,0);
-        Intent intent=new Intent();
-        intent.setAction(Intent.ACTION_HEADSET_PLUG);
-        intent.putExtra("microphone", 0);
-        context.sendBroadcast(intent);
+
+        audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,saved_volumn,0);
 //        changeToSpeaker(context);
 
 //        SimSignalUtil.SetRingMode(context, AudioManager.RINGER_MODE_NORMAL, true);
index a356078..0c52c2a 100644 (file)
@@ -1,2 +1,2 @@
-#Sat May 09 12:21:14 CST 2020\r
-VERSION_CODE=413\r
+#Tue May 12 11:12:47 CST 2020\r
+VERSION_CODE=415\r