From: snickersun Date: Wed, 1 Apr 2020 03:42:39 +0000 (+0800) Subject: 修改情景模式,来电铃声增加震动 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=6debdda32c8098ae680541fa83334d0efe3a00d1;p=icsupport.git 修改情景模式,来电铃声增加震动 --- diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index fc255211..f0a94b9a 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -6,6 +6,7 @@ import android.app.Notification; import android.app.PendingIntent; import android.app.Service; import android.content.Intent; +import android.media.AudioManager; import android.net.wifi.WifiManager; import android.os.Build; import android.os.Handler; @@ -118,6 +119,8 @@ public class CoreService extends Service { private static boolean is_in_sleep_mode = false; private static boolean is_wifi_network_ok = false; + // SPRD: add outdoorMode + public static final int RINGER_MODE_OUTDOOR = 3; private static ICSmsManager smsManager=null; public String getServerAlive(){ @@ -609,6 +612,10 @@ public class CoreService extends Service { needLocateInAfterHeartBeat=true; setLocationAlarm(runtime.getLocationInstance().getWorkingMod()); + + //设置来电模式 + SimSignalUtil.SetRingMode(this, AudioManager.RINGER_MODE_NORMAL,true); + //备份DB数据到sd cache目录,为调试方便 getDBFile(); } diff --git a/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java b/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java index 8e8a0359..613edd57 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java @@ -1,9 +1,11 @@ package com.enqualcomm.support.utils; +import android.app.Notification; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; import android.hardware.display.DisplayManager; +import android.media.AudioManager; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Build; @@ -180,7 +182,27 @@ public class SimSignalUtil { public void init() { this.mNetworkType = ((TelephonyManager)this.context.getSystemService(Context.TELEPHONY_SERVICE)).getNetworkType(); } - + + public static void SetRingMode(Context context,int mod,boolean vibmod){ + AudioManager am= (AudioManager)context.getSystemService(Context.AUDIO_SERVICE); + int currentRingmod=am.getRingerMode(); + am.setRingerMode(mod); + ICLogger.i("Current OldRingMod="+currentRingmod+", Set To RingMod="+mod+", check RingMod="+am.getRingerMode()); + + int curretnVibmod=am.getVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER); + + if(vibmod){ + Settings.System.putInt(context.getContentResolver(), Settings.System.VIBRATE_WHEN_RINGING,1); + am.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, AudioManager.VIBRATE_SETTING_ON); + am.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION, AudioManager.VIBRATE_SETTING_ON); + } else { + Settings.System.putInt(context.getContentResolver(), Settings.System.VIBRATE_WHEN_RINGING,0); + am.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, AudioManager.VIBRATE_SETTING_OFF); + am.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION, AudioManager.VIBRATE_SETTING_OFF); + } + ICLogger.i("Current OldVibRingMod="+curretnVibmod+", check VibRingMod="+am.getVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER)+" , shoudl Vib "+am.shouldVibrate(AudioManager.VIBRATE_TYPE_RINGER)); + + } public static boolean isScreenON(Context context) { // If you use less than API20: PowerManager powerManager = (PowerManager) context.getSystemService(POWER_SERVICE);