添加Alarm,Notification的提示窗口,
authorsnickersun <snickersun@qq.com>
Sat, 8 Feb 2020 17:14:33 +0000 (01:14 +0800)
committersnickersun <snickersun@qq.com>
Sat, 8 Feb 2020 17:14:33 +0000 (01:14 +0800)
实现微聊消息提醒,以及闹铃提醒。

16 files changed:
app/src/main/java/com/enqualcomm/support/CoreService.java
app/src/main/java/com/enqualcomm/support/adapter/protocolAPIHelper.java
app/src/main/java/com/enqualcomm/support/bean/Alarm.java
app/src/main/java/com/enqualcomm/support/bean/NoticeContent.java
app/src/main/java/com/enqualcomm/support/service/Deliver.java
app/src/main/java/com/enqualcomm/support/service/SilentManager.java
app/src/main/java/com/enqualcomm/support/utils/AlarmHelper.java
app/src/main/java/com/enqualcomm/support/utils/ContextProxy.java
app/src/main/java/com/enqualcomm/support/utils/CustomNotification.java
app/src/main/java/com/enqualcomm/support/utils/DBHelper.java
app/src/main/java/com/enqualcomm/support/utils/DeviceInfoUtil.java
app/src/main/java/com/enqualcomm/support/utils/NetworkObservable.java
app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java
app/src/main/java/com/enqualcomm/support/utils/ServiceUtil.java
app/src/main/res/values/strings.xml
app/src/main/res/values/styles.xml

index 1cd6888..c83f4c4 100644 (file)
@@ -584,8 +584,7 @@ public class CoreService extends Service {
 //                            this.mSendPairMessage.resetDownLoadConfig();\r
 //                            this.mSendPairMessage.startDownLoad(this.runtime, false);\r
                             return Service.START_STICKY;\r
-                        }\r
-                        if (ACTION_ALARM_ADD_DATAPOINTS.equals(paramIntent.getAction())) {\r
+                        }else if (ACTION_ALARM_ADD_DATAPOINTS.equals(paramIntent.getAction())) {\r
                             setUpLocationDataAlarm(28800000L);\r
                             if (this.upLoadDataPoints != null) {\r
                                 this.upLoadDataPoints.uploadCurrentLocation();\r
@@ -593,8 +592,7 @@ public class CoreService extends Service {
                             }\r
                             Logger.i("upLoadDataPoints=null");\r
                             return Service.START_STICKY;\r
-                        }\r
-                        if (Constants.STWORKMODE_ALARM.equals(paramIntent.getAction())) {\r
+                        }else if (Constants.STWORKMODE_ALARM.equals(paramIntent.getAction())) {\r
                             if (this.startAlarmCount >= 5) {\r
                                 alarmCycle = paramIntent.getIntExtra("location_cycle", 3);\r
                                 setAlarm(alarmCycle);\r
@@ -604,8 +602,7 @@ public class CoreService extends Service {
                             stringBuilder1.append(alarmCycle);\r
                             if (Config.LOG_TOFILE) FileOutputUtil.fileOutput(runtime.getCacheDir(), "alarmCycle", stringBuilder1.toString());\r
                             return Service.START_STICKY;\r
-                        }\r
-                        if (ACTION_LOCATION_ALARM.equals(paramIntent.getAction())){\r
+                        }else if (ACTION_LOCATION_ALARM.equals(paramIntent.getAction())){\r
                             //收到定时定位消息\r
                             setLocationAlarm(runtime.getLocationInstance().getWorkingMod());\r
                             stringBuilder1 = new StringBuilder();\r
@@ -615,13 +612,14 @@ public class CoreService extends Service {
                             this.locationClient.triggerLocationProcess();\r
                             return Service.START_STICKY;\r
 \r
-                        }\r
-                        if(ACTION_HEATR_RATE_START.equals(paramIntent.getAction())){\r
+                        }else {\r
+                            if (ACTION_HEATR_RATE_START.equals(paramIntent.getAction())) {\r
 \r
-                            //此处消息从timer来\r
-                            setHeartRateDetectAlarm(runtime.getPpgTestCycle());\r
-                            this.invokeHandlerServiceChain.processUserRequest(paramIntent, this.connection, this.runtime);\r
+                                //此处消息从timer来\r
+                                setHeartRateDetectAlarm(runtime.getPpgTestCycle());\r
 \r
+                            }\r
+                            this.invokeHandlerServiceChain.processUserRequest(paramIntent, this.connection, this.runtime);\r
                         }\r
                     }\r
                 }\r
index 9452c31..98706fe 100644 (file)
@@ -10,6 +10,7 @@ import android.util.Log;
 import com.enqualcomm.support.Config;\r
 import com.enqualcomm.support.Constants;\r
 import com.enqualcomm.support.LocationClient;\r
+import com.enqualcomm.support.bean.Alarm;\r
 import com.enqualcomm.support.bean.Contact;\r
 import com.enqualcomm.support.bean.Content;\r
 import com.enqualcomm.support.bean.ICLocation;\r
@@ -720,6 +721,7 @@ public class protocolAPIHelper {
         int alarmtype=1; //1表示吃药提醒 , 2 表示喝水提醒 ,3 表示久坐提醒\r
         String repeat="";// 135表示周一周三周五,使用24小时制\r
         String[] datalist= cmd.split("@");\r
+        ArrayList<Alarm> alarmlist=new ArrayList<>();\r
         if (datalist.length >0){\r
             for (int i =0 ; i< datalist.length;i++){\r
                 String [] cmdarglist=datalist[i].split(",");\r
@@ -747,6 +749,7 @@ public class protocolAPIHelper {
                                 .append(", alarmtype=").append(alarmtype)\r
                                 .toString()\r
                         );\r
+                        alarmlist.add(new Alarm("ST"+alarmtime.substring(0,2)+"."+alarmtime.substring(2),"W"+repeat,"CON",alarmswitch==1?"ON":"OFF","闹铃"));\r
 \r
                     }else if (cmdarglist.length == 5) {\r
                         imei=cmdarglist[1];\r
@@ -769,9 +772,14 @@ public class protocolAPIHelper {
                                 .append(", alarmtype=").append(alarmtype)\r
                                 .toString()\r
                         );\r
+\r
+                        alarmlist.add(new Alarm("ST"+alarmtime.substring(0,2)+"."+alarmtime.substring(2),"W"+repeat,"CON",alarmswitch==1?"ON":"OFF","闹铃"));\r
+\r
                     }else{\r
                         log("data len is too small!");\r
                     }\r
+                    runtime.getDbHelper().saveAlarm(alarmlist);\r
+\r
                 }\r
             }//循环获取alarm数据结束\r
 \r
@@ -1102,7 +1110,7 @@ public static String AP15(String index){
     }\r
 \r
     //处理 BP28 语音消息\r
-    public void handleBP28(Connection connection,String cmd,Runtime runtime,byte[] bytes) {\r
+    public void handleBP28(NettyConnection connection,String cmd,Runtime runtime,byte[] bytes) {\r
         //log("handleBP28 msg"+cmd);\r
 /**\r
  * IWBP28, D3590D54,XXXX,6,1,1024,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX#\r
@@ -1173,9 +1181,9 @@ public static String AP15(String index){
                 voiceContent.preview = String.valueOf(Util.getDuration(voiceContent.content));\r
                 runtime.getDbHelper().updateMessage(voiceContent, uri2);\r
 \r
-                runtime.getContextProxy().sendBroadcast(ACTION_IMESSAGE, runtime);\r
-\r
+//                runtime.getContextProxy().sendBroadcast(ACTION_IMESSAGE, runtime);\r
 \r
+                connection.DeliverCMDMessageToSystem("NewVoice", "");//通知下面线程状态变化\r
             }\r
 \r
         }else{\r
index 14abfa7..646d0a2 100644 (file)
@@ -2,61 +2,65 @@ package com.enqualcomm.support.bean;
 \r
 public class Alarm {\r
   public String name;\r
-  \r
   public String ring;\r
-  \r
   public String status;\r
-  \r
   public String time;\r
-  \r
   public String week;\r
-  \r
-  public Alarm(String paramString1, String paramString2, String paramString3, String paramString4) {\r
-    this.time = paramString1;\r
-    this.week = paramString2;\r
-    this.ring = paramString3;\r
-    this.status = paramString4;\r
+\r
+  public Alarm(String _time, String _week, String _ring, String _status) {\r
+    this.time = _time;\r
+    this.week = _week;\r
+    this.ring = _ring;\r
+    this.status = _status;\r
   }\r
-  \r
-  public Alarm(String paramString1, String paramString2, String paramString3, String paramString4, String paramString5) {\r
-    this.time = paramString1;\r
-    this.week = paramString2;\r
-    this.ring = paramString3;\r
-    this.status = paramString4;\r
-    this.name = paramString5;\r
+\r
+  public Alarm(String _time, String _week, String _ring, String _status, String _name) {\r
+    this.time = _time;\r
+    this.week = _week;\r
+    this.ring = _ring;\r
+    this.status = _status;\r
+    this.name = _name;\r
   }\r
-  \r
-  public boolean equals(Object obj) {\r
-    if (this == obj)\r
-      return true; \r
-    if (obj != null) {\r
-      if (getClass() != obj.getClass())\r
+\r
+  public boolean equals(Object var1) {\r
+    if (this == var1) {\r
+      return true;\r
+    } else if (var1 != null && this.getClass() == var1.getClass()) {\r
+      Alarm var2 = (Alarm)var1;\r
+      if (!this.time.equals(var2.time)) {\r
+        return false;\r
+      } else if (!this.week.equals(var2.week)) {\r
         return false;\r
-      Alarm alarm = (Alarm)obj;\r
-      return !this.time.equals(alarm.time) ? false : (!this.week.equals(alarm.week) ? false : (!this.ring.equals(alarm.ring) ? false : (!this.status.equals(alarm.status) ? false : this.name.equals(alarm.name))));\r
-    } \r
-    return false;\r
+      } else if (!this.ring.equals(var2.ring)) {\r
+        return false;\r
+      } else {\r
+        return !this.status.equals(var2.status) ? false : this.name.equals(var2.name);\r
+      }\r
+    } else {\r
+      return false;\r
+    }\r
   }\r
-  \r
+\r
   public String toString() {\r
-    StringBuilder stringBuilder = new StringBuilder();\r
-    stringBuilder.append("Alarm{time='");\r
-    stringBuilder.append(this.time);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", week='");\r
-    stringBuilder.append(this.week);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", ring='");\r
-    stringBuilder.append(this.ring);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", status='");\r
-    stringBuilder.append(this.status);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", name='");\r
-    stringBuilder.append(this.name);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append('}');\r
-    return stringBuilder.toString();\r
+    StringBuilder var1 = new StringBuilder();\r
+    var1.append("Alarm{time='");\r
+    var1.append(this.time);\r
+    var1.append('\'');\r
+    var1.append(", week='");\r
+    var1.append(this.week);\r
+    var1.append('\'');\r
+    var1.append(", ring='");\r
+    var1.append(this.ring);\r
+    var1.append('\'');\r
+    var1.append(", status='");\r
+    var1.append(this.status);\r
+    var1.append('\'');\r
+    var1.append(", name='");\r
+    var1.append(this.name);\r
+    var1.append('\'');\r
+    var1.append('}');\r
+    return var1.toString();\r
   }\r
 }\r
 \r
+\r
index 1802bd5..3f790ef 100644 (file)
@@ -1,90 +1,86 @@
 package com.enqualcomm.support.bean;\r
 \r
-\r
+import com.enqualcomm.support.utils.Util;\r
 import java.io.File;\r
 import java.util.ArrayList;\r
 \r
 public class NoticeContent {\r
   public String noticeCategory;\r
-  \r
   public String noticeContent;\r
-  \r
   public String noticeFrequency;\r
-  \r
   public String noticeID;\r
-  \r
   public String noticeName;\r
-  \r
   public String noticeNumber;\r
-  \r
   public String noticeTime;\r
-  \r
-  public NoticeContent(String paramString1, String paramString2, String paramString3, String paramString4, String paramString5, String paramString6, String paramString7) {\r
-    this.noticeTime = paramString1;\r
-    this.noticeName = paramString2;\r
-    this.noticeNumber = paramString3;\r
-    this.noticeID = paramString4;\r
-    this.noticeCategory = paramString5;\r
-    this.noticeFrequency = paramString6;\r
-    this.noticeContent = paramString7;\r
+\r
+  public NoticeContent(String var1, String var2, String var3, String var4, String var5, String var6, String var7) {\r
+    this.noticeTime = var1;\r
+    this.noticeName = var2;\r
+    this.noticeNumber = var3;\r
+    this.noticeID = var4;\r
+    this.noticeCategory = var5;\r
+    this.noticeFrequency = var6;\r
+    this.noticeContent = var7;\r
+  }\r
+\r
+  public static NoticeContent from(NoticeContent var0, byte[] var1, File var2) {\r
+    byte var3 = var1[0];\r
+    byte[] var4 = new byte[var3];\r
+    System.arraycopy(var1, 1, var4, 0, var3);\r
+    ArrayList var5 = Util.split(var4, (byte)59, 0);\r
+    ArrayList var6 = Util.split((byte[])var5.get(3), (byte)58, 0);\r
+    String var14 = new String((byte[])var6.get(0));\r
+    String var16 = new String((byte[])var6.get(1));\r
+    StringBuilder var7 = new StringBuilder();\r
+    var7.append(new String((byte[])var5.get(1)));\r
+    var7.append(new String((byte[])var5.get(2)));\r
+    String var17 = var7.toString();\r
+    String var8 = new String((byte[])var5.get(4));\r
+    String var9 = new String((byte[])var5.get(5));\r
+    String var15 = new String((byte[])var5.get(6));\r
+    int var10 = var1.length - 1 - var3;\r
+    int var13 = var1.length;\r
+    StringBuilder var11 = new StringBuilder();\r
+    var11.append(var8);\r
+    var11.append(".amr");\r
+    String var12 = Util.saveFile(var1, var13 - var10, var10, var2, var11.toString());\r
+    Util.getDuration(var12);\r
+    var0.noticeTime = var17;\r
+    var0.noticeName = var14;\r
+    var0.noticeNumber = var16;\r
+    var0.noticeID = var8;\r
+    var0.noticeCategory = var9;\r
+    var0.noticeFrequency = var15;\r
+    var0.noticeContent = var12;\r
+    return var0;\r
   }\r
-  \r
-  public static NoticeContent from(NoticeContent paramNoticeContent, byte[] paramArrayOfByte, File paramFile) {\r
-//    byte b = paramArrayOfByte[0];\r
-//    byte[] arrayOfByte = new byte[b];\r
-//    System.arraycopy(paramArrayOfByte, 1, arrayOfByte, 0, b);\r
-//    ArrayList arrayList2 = Util.split(arrayOfByte, (byte)59, 0);\r
-//    ArrayList arrayList1 = Util.split((byte[])arrayList2.get(3), (byte)58, 0);\r
-//    String str2 = new String((byte[])arrayList1.get(0));\r
-//    String str3 = new String((byte[])arrayList1.get(1));\r
-//    StringBuilder stringBuilder1 = new StringBuilder();\r
-//    stringBuilder1.append(new String((byte[])arrayList2.get(1)));\r
-//    stringBuilder1.append(new String((byte[])arrayList2.get(2)));\r
-//    String str4 = stringBuilder1.toString();\r
-//    String str5 = new String((byte[])arrayList2.get(4));\r
-//    String str6 = new String((byte[])arrayList2.get(5));\r
-//    String str7 = new String((byte[])arrayList2.get(6));\r
-//    int i = paramArrayOfByte.length - 1 - b;\r
-//    int j = paramArrayOfByte.length;\r
-//    StringBuilder stringBuilder2 = new StringBuilder();\r
-//    stringBuilder2.append(str5);\r
-//    stringBuilder2.append(".amr");\r
-//    String str1 = Util.saveFile(paramArrayOfByte, j - i, i, paramFile, stringBuilder2.toString());\r
-//    Util.getDuration(str1);\r
-//    paramNoticeContent.noticeTime = str4;\r
-//    paramNoticeContent.noticeName = str2;\r
-//    paramNoticeContent.noticeNumber = str3;\r
-//    paramNoticeContent.noticeID = str5;\r
-//    paramNoticeContent.noticeCategory = str6;\r
-//    paramNoticeContent.noticeFrequency = str7;\r
-//    paramNoticeContent.noticeContent = str1;\r
-    return paramNoticeContent;\r
+\r
+  public static NoticeContent placeHolderIn(String var0) {\r
+    return new NoticeContent((String)null, (String)null, (String)null, var0, "1", "0", (String)null);\r
   }\r
-  \r
-  public static NoticeContent placeHolderIn(String paramString) { return new NoticeContent(null, null, null, paramString, "1", "0", null); }\r
-  \r
+\r
   public String toString() {\r
-    StringBuilder stringBuilder = new StringBuilder();\r
-    stringBuilder.append("NoticeContent{noticeTime='");\r
-    stringBuilder.append(this.noticeTime);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", noticeName='");\r
-    stringBuilder.append(this.noticeName);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", noticeNumber='");\r
-    stringBuilder.append(this.noticeNumber);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", noticeID='");\r
-    stringBuilder.append(this.noticeID);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append(", noticeCategory=");\r
-    stringBuilder.append(this.noticeCategory);\r
-    stringBuilder.append(", noticeFrequency=");\r
-    stringBuilder.append(this.noticeFrequency);\r
-    stringBuilder.append(", noticeContent='");\r
-    stringBuilder.append(this.noticeContent);\r
-    stringBuilder.append('\'');\r
-    stringBuilder.append('}');\r
-    return stringBuilder.toString();\r
+    StringBuilder var1 = new StringBuilder();\r
+    var1.append("NoticeContent{noticeTime='");\r
+    var1.append(this.noticeTime);\r
+    var1.append('\'');\r
+    var1.append(", noticeName='");\r
+    var1.append(this.noticeName);\r
+    var1.append('\'');\r
+    var1.append(", noticeNumber='");\r
+    var1.append(this.noticeNumber);\r
+    var1.append('\'');\r
+    var1.append(", noticeID='");\r
+    var1.append(this.noticeID);\r
+    var1.append('\'');\r
+    var1.append(", noticeCategory=");\r
+    var1.append(this.noticeCategory);\r
+    var1.append(", noticeFrequency=");\r
+    var1.append(this.noticeFrequency);\r
+    var1.append(", noticeContent='");\r
+    var1.append(this.noticeContent);\r
+    var1.append('\'');\r
+    var1.append('}');\r
+    return var1.toString();\r
   }\r
-}\r
+}
\ No newline at end of file
index 4d6e802..a0baddd 100644 (file)
@@ -12,6 +12,7 @@ import android.net.wifi.WifiConfiguration;
 import android.net.wifi.WifiManager;\r
 import android.os.Build;\r
 import android.os.Handler;\r
+import android.os.Parcelable;\r
 import android.os.PowerManager;\r
 import android.os.SystemClock;\r
 import android.text.TextUtils;\r
@@ -19,7 +20,9 @@ import android.text.TextUtils;
 import com.enqualcomm.support.Config;\r
 import com.enqualcomm.support.CoreService;\r
 import com.enqualcomm.support.LocationClient;\r
+import com.enqualcomm.support.R;\r
 import com.enqualcomm.support.adapter.protocolAPIHelper;\r
+import com.enqualcomm.support.bean.Contact;\r
 import com.enqualcomm.support.bean.StringMessage;\r
 import com.enqualcomm.support.bean.VoiceContent;\r
 import com.enqualcomm.support.bean.voicePacket;\r
@@ -31,6 +34,7 @@ import com.enqualcomm.support.bean.Runtime;
 import com.enqualcomm.support.utils.DBHelper;\r
 import com.enqualcomm.support.utils.FileCache;\r
 import com.enqualcomm.support.utils.FileOutputUtil;\r
+import com.enqualcomm.support.utils.GetContact;\r
 import com.enqualcomm.support.utils.Logger;\r
 import com.enqualcomm.support.utils.NettyConnection;\r
 import com.enqualcomm.support.utils.ServiceUtil;\r
@@ -401,30 +405,27 @@ public static void sendLocationMSG( String Msg){
     this.mConnection = paramConnection;\r
     this.mRuntime = paramRuntime;\r
     String cmd = paramStringMessage.cmd();\r
-    Logger.i("Deliver receive cmd "+paramStringMessage.cmd());\r
-    if (cmd.equals("BP07") || cmd.equals("SentVoicePacket")){\r
-    //收到BP07 表示服务器收到一个voicePacket 分包成功,开始检查下一个包是否存在需要发送。\r
+    Logger.i("Deliver receive cmd " + paramStringMessage.cmd());\r
+    if (cmd.equals("BP07") || cmd.equals("SentVoicePacket")) {\r
+      //收到BP07 表示服务器收到一个voicePacket 分包成功,开始检查下一个包是否存在需要发送。\r
       //收到SentVoicePacket 表示 有一个VoiceMessage要发送,需要从第0个包开始发送语音分包。\r
 \r
-     voicePacket voicepacket= voicePacket.getInstanceSent();\r
-\r
-     if (voicepacket.getCurrentIndexToSent() < voicepacket.getPacketCount()){\r
-       Logger.i("voicepacket "+voicepacket.getName()+" "+voicepacket.getPacketTime()+" send "+(voicepacket.getCurrentIndexToSent()+1)+"/"+voicepacket.getPacketCount());\r
-       ((NettyConnection)mConnection).sendMsg(\r
-               protocolAPIHelper.AP07(voicepacket.getPacketTime(),\r
-                       voicepacket.getPacketCount(),\r
-                       (voicepacket.getCurrentIndexToSent()+1),\r
-                       voicepacket.getVoicePacketWithIndex(voicepacket.getCurrentIndexToSent()).getPacketLen(),\r
-                       voicepacket.getVoicePacketWithIndex(voicepacket.getCurrentIndexToSent()).getPacketData())\r
-       );\r
-     }else{\r
-       Logger.i("voicepacket "+voicepacket.getName()+" "+voicepacket.getPacketTime()+" sent Done!");\r
-     }\r
-     return true;\r
-    }\r
-\r
-\r
-    if ("poweroff".equals(paramStringMessage.cmd())) {\r
+      voicePacket voicepacket = voicePacket.getInstanceSent();\r
+\r
+      if (voicepacket.getCurrentIndexToSent() < voicepacket.getPacketCount()) {\r
+        Logger.i("voicepacket " + voicepacket.getName() + " " + voicepacket.getPacketTime() + " send " + (voicepacket.getCurrentIndexToSent() + 1) + "/" + voicepacket.getPacketCount());\r
+        ((NettyConnection) mConnection).sendMsg(\r
+                protocolAPIHelper.AP07(voicepacket.getPacketTime(),\r
+                        voicepacket.getPacketCount(),\r
+                        (voicepacket.getCurrentIndexToSent() + 1),\r
+                        voicepacket.getVoicePacketWithIndex(voicepacket.getCurrentIndexToSent()).getPacketLen(),\r
+                        voicepacket.getVoicePacketWithIndex(voicepacket.getCurrentIndexToSent()).getPacketData())\r
+        );\r
+      } else {\r
+        Logger.i("voicepacket " + voicepacket.getName() + " " + voicepacket.getPacketTime() + " sent Done!");\r
+      }\r
+      return true;\r
+    } else if ("poweroff".equals(paramStringMessage.cmd())) {\r
       paramRuntime.setShutdown(true);\r
       Observable.timer(60000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
         public void call(Long param1Long) {\r
@@ -432,16 +433,14 @@ public static void sendLocationMSG( String Msg){
         }\r
       });\r
       return true;\r
-    }\r
-    if ("FactoryReset".equals(paramStringMessage.cmd())) {\r
+    } else if ("FactoryReset".equals(paramStringMessage.cmd())) {\r
       Observable.timer(5000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
         public void call(Long param1Long) {\r
           paramRuntime.getContextProxy().doMasterClear();\r
         }\r
       });\r
       return true;\r
-    }\r
-    if ("Reboot".equals(paramStringMessage.cmd())) {\r
+    } else if ("Reboot".equals(paramStringMessage.cmd())) {\r
 \r
       Observable.timer(5000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
         public void call(Long param1Long) {\r
@@ -449,12 +448,28 @@ public static void sendLocationMSG( String Msg){
         }\r
       });\r
       return true;\r
-    }\r
-\r
-   if ("BP03".equals(paramStringMessage.cmd())) {\r
-     //每次心跳,查询一下 是否有语音消息需要接收。\r
+    } else if ("BP03".equals(paramStringMessage.cmd())) {\r
+      //每次心跳,查询一下 是否有语音消息需要接收。\r
 //      paramConnection.send(protocolAPIHelper.genStringMessage("AP05",protocolAPIHelper.AP05(true)));\r
-   }\r
+    } else if ("NewVoice".equals(paramStringMessage.cmd()))\r
+    {\r
+      Observable.timer(500L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
+        public void call(Long param1Long) {\r
+          final Context context = (Deliver.this.mRuntime.getContextProxy()).context;\r
+\r
+          Contact param2Contact = new Contact(0, (mRuntime.getContextProxy()).context.getResources().getString(R.string.family_group), "1@-3");\r
+          int i = mRuntime.getContextProxy().getTelephonyManager().getCallState();\r
+          if (!mRuntime.getBatteryLow() && 1 != i && 2 != i) {\r
+            Intent intent = new Intent();\r
+            intent.setAction("com.enqualcomm.support.DIALOG");\r
+            intent.putExtra("contact", (Parcelable) param2Contact);\r
+            context.sendBroadcast(intent);\r
+\r
+          }\r
+        }\r
+      });\r
+    return true;\r
+  }\r
 \r
 \r
     return false;\r
index 9039d07..0e9c6f7 100644 (file)
@@ -14,8 +14,6 @@ import android.os.Message;
 import android.os.Messenger;\r
 import android.telephony.PhoneStateListener;\r
 import android.telephony.TelephonyManager;\r
-\r
-\r
 import com.enqualcomm.support.CoreService;\r
 import com.enqualcomm.support.ICContentProvider;\r
 import com.enqualcomm.support.bean.Alarm;\r
@@ -24,831 +22,740 @@ import com.enqualcomm.support.bean.NoticeContent;
 import com.enqualcomm.support.bean.Runtime;\r
 import com.enqualcomm.support.bean.Silent;\r
 import com.enqualcomm.support.bean.StheartRate;\r
-import com.enqualcomm.support.utils.Connection;\r
+\r
 import com.enqualcomm.support.service.base.AbstractInvokeHandlerService;\r
 import com.enqualcomm.support.utils.AlarmHelper;\r
+import com.enqualcomm.support.utils.Connection;\r
 import com.enqualcomm.support.utils.DBHelper;\r
 import com.enqualcomm.support.utils.Logger;\r
-\r
+import com.enqualcomm.support.utils.MissedCallContentObserver;\r
 import com.enqualcomm.support.utils.SharPreferenceUtil;\r
 import com.enqualcomm.support.utils.TimeUtil;\r
-\r
 import java.util.ArrayList;\r
 import java.util.Calendar;\r
 import java.util.Iterator;\r
 \r
-import static android.app.PendingIntent.FLAG_UPDATE_CURRENT;\r
-import static java.util.Calendar.DAY_OF_MONTH;\r
-import static java.util.Calendar.HOUR_OF_DAY;\r
-import static java.util.Calendar.MINUTE;\r
-import static java.util.Calendar.MONTH;\r
-import static java.util.Calendar.SECOND;\r
-import static java.util.Calendar.UNDECIMBER;\r
-import static java.util.Calendar.YEAR;\r
+import static android.telephony.TelephonyManager.CALL_STATE_OFFHOOK;\r
+import static android.telephony.TelephonyManager.CALL_STATE_RINGING;\r
 \r
 public class SilentManager extends AbstractInvokeHandlerService {\r
   private static final long ONE_WEEK = 604800000L;\r
-  \r
   private ArrayList<Alarm> alarms;\r
-  \r
   private boolean haveHandSilence;\r
-  \r
   private boolean isCalling;\r
-  \r
   AlarmManager mAlarmManager;\r
-  \r
-  private AlramReceiver mAlramReceiver;\r
-  \r
+  private SilentManager.AlramReceiver mAlramReceiver;\r
   Connection mConnection;\r
-  \r
   ContentObserver mContentObserver = new ContentObserver(new Handler()) {\r
-      public void onChange(boolean param1Boolean) {\r
-        Logger.i("静默有变化");\r
-//        SilentManager.access$002(SilentManager.this, SilentManager.this.querySilent());\r
-        SilentManager.this.getSilentListStartAndEndTime();\r
-        SilentManager.this.handleSilent(SilentManager.this.mRuntime, true);\r
-      }\r
-    };\r
-  \r
+    public void onChange(boolean var1) {\r
+      Logger.i("静默有变化");\r
+      SilentManager.this.silentList = SilentManager.this.querySilent();\r
+      SilentManager.this.getSilentListStartAndEndTime();\r
+      SilentManager.this.handleSilent(SilentManager.this.mRuntime, true);\r
+    }\r
+  };\r
   private Context mContext;\r
-  \r
   private DBHelper mDbHelper;\r
-  \r
   private boolean mInSilent;\r
-  \r
   private String mInterval;\r
-  \r
   private boolean mIsNeedAntioff;\r
-  \r
   private boolean mIsStheartRate;\r
-  \r
-//  private MissedCallContentObserver mMissedCallContentObserver;\r
-  \r
+  private MissedCallContentObserver mMissedCallContentObserver;\r
   Runtime mRuntime;\r
-  \r
   private int mStheartRateInterval;\r
-  \r
   private int mTodayWeek;\r
-  \r
   private boolean mValue_isSilence;\r
-  \r
   private PhoneStateListener phoneStateListener = new PhoneStateListener() {\r
-      public void onCallStateChanged(int param1Int, String param1String) {\r
-        Intent intent;\r
-        super.onCallStateChanged(param1Int, param1String);\r
-        switch (param1Int) {\r
-          default:\r
-            return;\r
-          case 2:\r
-//            SilentManager.access$1702(SilentManager.this, true);\r
-            return;\r
-          case 1:\r
-//            SilentManager.access$1702(SilentManager.this, true);\r
-            intent = new Intent();\r
-            intent.setAction("com.enqualcomm.support.CloseUnreadMsg");\r
-            SilentManager.this.mContext.sendBroadcast(intent);\r
-            return;\r
-          case 0:\r
-            break;\r
-        } \r
-//        SilentManager.access$1702(SilentManager.this, false);\r
-        if (SilentManager.this.haveHandSilence)\r
-          SilentManager.this.handSilence(SilentManager.this.mContext, SilentManager.this.mValue_isSilence); \r
+    public void onCallStateChanged(int var1, String var2) {\r
+      super.onCallStateChanged(var1, var2);\r
+      switch(var1) {\r
+        case 0:\r
+          SilentManager.this.isCalling = false;\r
+          if (SilentManager.this.haveHandSilence) {\r
+            SilentManager.this.handSilence(SilentManager.this.mContext, SilentManager.this.mValue_isSilence);\r
+          }\r
+          break;\r
+        case 1:\r
+          SilentManager.this.isCalling = true;\r
+          Intent var3 = new Intent();\r
+          var3.setAction("com.enqualcomm.support.CloseUnreadMsg");\r
+          SilentManager.this.mContext.sendBroadcast(var3);\r
+          break;\r
+        case 2:\r
+          SilentManager.this.isCalling = true;\r
       }\r
-    };\r
-  \r
+\r
+    }\r
+  };\r
   private ArrayList<Antioff> sAntioffList;\r
-  \r
   private ArrayList<Silent> silentList;\r
-  \r
   private ArrayList<StheartRate> stheartRateList;\r
-  \r
   private ArrayList<NoticeContent> voiceNotice;\r
-  \r
-  private void callback(Messenger paramMessenger, boolean paramBoolean) {\r
-    char c;\r
-    if (paramBoolean) {\r
-      c = 'ɘ';\r
+\r
+  public SilentManager() {\r
+  }\r
+\r
+  private void callback(Messenger var1, boolean var2) {\r
+    short var3;\r
+    if (var2) {\r
+      var3 = 600;\r
     } else {\r
-      c = 'ʼ';\r
-    } \r
-    if (paramMessenger != null)\r
+      var3 = 700;\r
+    }\r
+\r
+    if (var1 != null) {\r
       try {\r
-        paramMessenger.send(Message.obtain(null, c));\r
-        return;\r
-      } catch (Exception e) {\r
-        e.printStackTrace();\r
-      }  \r
+        var1.send(Message.obtain((Handler)null, var3));\r
+      } catch (Exception var4) {\r
+        var4.printStackTrace();\r
+      }\r
+    }\r
+\r
   }\r
-  \r
-  private void cancelAlarm(ArrayList<Alarm> paramArrayList) {\r
-    for (Alarm alarm : paramArrayList) {\r
-      String str1 = alarm.time;\r
-      String str2 = alarm.week;\r
-      String str3 = alarm.ring;\r
-      String str4 = alarm.name;\r
-      char[] arrayOfChar = str2.toCharArray();\r
-      int i = arrayOfChar.length;\r
-      for (byte b = 1; b < i; b++) {\r
-        char c = arrayOfChar[b];\r
-        this.mAlarmManager.cancel(getPendingIntent(str1, str2, str3, str4, c - '/'));\r
-      } \r
-    } \r
+\r
+  private void cancelAlarm(ArrayList<Alarm> var1) {\r
+    Iterator var2 = var1.iterator();\r
+\r
+    while(var2.hasNext()) {\r
+      Alarm var3 = (Alarm)var2.next();\r
+      String var10 = var3.time;\r
+      String var4 = var3.week;\r
+      String var5 = var3.ring;\r
+      String var11 = var3.name;\r
+      char[] var6 = var4.toCharArray();\r
+      int var7 = var6.length;\r
+\r
+      for(int var8 = 1; var8 < var7; ++var8) {\r
+        char var9 = var6[var8];\r
+        this.mAlarmManager.cancel(this.getPendingIntent(var10, var4, var5, var11, var9 - 47));\r
+      }\r
+    }\r
+\r
   }\r
-  \r
-  private void cancelNoticeAlarm(ArrayList<NoticeContent> paramArrayList) {\r
-    for (NoticeContent noticeContent : paramArrayList) {\r
-      String str1 = noticeContent.noticeTime;\r
-      String str2 = noticeContent.noticeName;\r
-      String str3 = noticeContent.noticeNumber;\r
-      String str4 = noticeContent.noticeID;\r
-      String str5 = noticeContent.noticeCategory;\r
-      String str6 = noticeContent.noticeFrequency;\r
-      String str7 = noticeContent.noticeContent;\r
-      this.mAlarmManager.cancel(getPendingIntent(str1, str2, str3, str4, str5, str6, str7));\r
-    } \r
+\r
+  private void cancelNoticeAlarm(ArrayList<NoticeContent> var1) {\r
+    Iterator var2 = var1.iterator();\r
+\r
+    while(var2.hasNext()) {\r
+      NoticeContent var3 = (NoticeContent)var2.next();\r
+      String var4 = var3.noticeTime;\r
+      String var9 = var3.noticeName;\r
+      String var5 = var3.noticeNumber;\r
+      String var6 = var3.noticeID;\r
+      String var7 = var3.noticeCategory;\r
+      String var8 = var3.noticeFrequency;\r
+      String var10 = var3.noticeContent;\r
+      this.mAlarmManager.cancel(this.getPendingIntent(var4, var9, var5, var6, var7, var8, var10));\r
+    }\r
+\r
   }\r
-  \r
-  private PendingIntent getPendingIntent(String paramString1, String paramString2, String paramString3, String paramString4, int paramInt) {\r
-    StringBuilder stringBuilder = new StringBuilder("alarm:");\r
-    stringBuilder.append(paramString1);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString2);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString3);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString4);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramInt);\r
-    paramString1 = stringBuilder.toString();\r
-    Intent intent = new Intent(this.mContext, CoreService.class);\r
-    intent.setAction("com.enqualcomm.support.ACTION_CARE_ALARM");\r
-    intent.setData(Uri.parse(paramString1));\r
-    return PendingIntent.getService(this.mContext, 0, intent, FLAG_UPDATE_CURRENT);\r
+\r
+  private PendingIntent getPendingIntent(String var1, String var2, String var3, String var4, int var5) {\r
+    StringBuilder var6 = new StringBuilder("alarm:");\r
+    var6.append(var1);\r
+    var6.append(",");\r
+    var6.append(var2);\r
+    var6.append(",");\r
+    var6.append(var3);\r
+    var6.append(",");\r
+    var6.append(var4);\r
+    var6.append(",");\r
+    var6.append(var5);\r
+    var2 = var6.toString();\r
+    Intent var7 = new Intent(this.mContext, CoreService.class);\r
+    var7.setAction("com.enqualcomm.support.ACTION_CARE_ALARM");\r
+    var7.setData(Uri.parse(var2));\r
+    return PendingIntent.getService(this.mContext, 0, var7, PendingIntent.FLAG_UPDATE_CURRENT);\r
   }\r
-  \r
-  private PendingIntent getPendingIntent(String paramString1, String paramString2, String paramString3, String paramString4, String paramString5, String paramString6, String paramString7) {\r
-    StringBuilder stringBuilder = new StringBuilder("notice:");\r
-    stringBuilder.append(paramString1);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString2);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString3);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString4);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString5);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString6);\r
-    stringBuilder.append(",");\r
-    stringBuilder.append(paramString7);\r
-    paramString1 = stringBuilder.toString();\r
-    Intent intent = new Intent(this.mContext, CoreService.class);\r
-    intent.setAction("com.enqualcomm.support.ACTION_NOTICE_ALARM");\r
-    intent.setData(Uri.parse(paramString1));\r
-    return PendingIntent.getService(this.mContext, 0, intent, FLAG_UPDATE_CURRENT);\r
+\r
+  private PendingIntent getPendingIntent(String var1, String var2, String var3, String var4, String var5, String var6, String var7) {\r
+    StringBuilder var8 = new StringBuilder("notice:");\r
+    var8.append(var1);\r
+    var8.append(",");\r
+    var8.append(var2);\r
+    var8.append(",");\r
+    var8.append(var3);\r
+    var8.append(",");\r
+    var8.append(var4);\r
+    var8.append(",");\r
+    var8.append(var5);\r
+    var8.append(",");\r
+    var8.append(var6);\r
+    var8.append(",");\r
+    var8.append(var7);\r
+    var1 = var8.toString();\r
+    Intent var9 = new Intent(this.mContext, CoreService.class);\r
+    var9.setAction("com.enqualcomm.support.ACTION_NOTICE_ALARM");\r
+    var9.setData(Uri.parse(var1));\r
+    return PendingIntent.getService(this.mContext, 0, var9, PendingIntent.FLAG_UPDATE_CURRENT);\r
   }\r
-  \r
+\r
   private void getSilentListStartAndEndTime() {\r
-//    Calendar calendar = Calendar.getInstance();\r
-//    this.mTodayWeek = calendar.get(7);\r
-//    for (Silent silent : this.silentList) {\r
-//      calendar.set(13, 0);\r
-//      int i = Integer.parseInt(silent.start.substring(2, 4));\r
-//      int j = Integer.parseInt(silent.start.substring(5, 7));\r
-//      calendar.set(11, i);\r
-//      calendar.set(12, j);\r
-//      silent.startTimeMillis = calendar.getTimeInMillis();\r
-//      i = Integer.parseInt(silent.end.substring(2, 4));\r
-//      j = Integer.parseInt(silent.end.substring(5, 7));\r
-//      calendar.set(11, i);\r
-//      calendar.set(12, j);\r
-//      silent.endTimeMillis = calendar.getTimeInMillis();\r
-//    }\r
+    Calendar var1 = Calendar.getInstance();\r
+    this.mTodayWeek = var1.get(Calendar.DAY_OF_WEEK);\r
+\r
+    Silent var3;\r
+    for(Iterator var2 = this.silentList.iterator(); var2.hasNext(); var3.endTimeMillis = var1.getTimeInMillis()) {\r
+      var3 = (Silent)var2.next();\r
+      var1.set(Calendar.SECOND, 0);\r
+      int var4 = Integer.parseInt(var3.start.substring(2, 4));\r
+      int var5 = Integer.parseInt(var3.start.substring(5, 7));\r
+      var1.set(Calendar.HOUR_OF_DAY, var4);\r
+      var1.set(Calendar.MINUTE, var5);\r
+      var3.startTimeMillis = var1.getTimeInMillis();\r
+      var5 = Integer.parseInt(var3.end.substring(2, 4));\r
+      var4 = Integer.parseInt(var3.end.substring(5, 7));\r
+      var1.set(Calendar.HOUR_OF_DAY, var5);\r
+      var1.set(Calendar.MINUTE, var4);\r
+    }\r
+\r
   }\r
-  \r
+\r
   private void getStartAndEndSantioffTime() {\r
-//    Calendar calendar = Calendar.getInstance();\r
-//    this.mTodayWeek = calendar.get(7);\r
-//    for (Antioff antioff : this.sAntioffList) {\r
-//      calendar.set(13, 0);\r
-//      int i = Integer.parseInt(antioff.start.substring(2, 4));\r
-//      int j = Integer.parseInt(antioff.start.substring(5, 7));\r
-//      calendar.set(11, i);\r
-//      calendar.set(12, j);\r
-//      antioff.startTimeMillis = calendar.getTimeInMillis();\r
-//      i = Integer.parseInt(antioff.end.substring(2, 4));\r
-//      j = Integer.parseInt(antioff.end.substring(5, 7));\r
-//      calendar.set(11, i);\r
-//      calendar.set(12, j);\r
-//      antioff.endTimeMillis = calendar.getTimeInMillis();\r
-//    }\r
+    Calendar var1 = Calendar.getInstance();\r
+    this.mTodayWeek = var1.get(Calendar.DAY_OF_WEEK);\r
+\r
+    Antioff var3;\r
+    for(Iterator var2 = this.sAntioffList.iterator(); var2.hasNext(); var3.endTimeMillis = var1.getTimeInMillis()) {\r
+      var3 = (Antioff)var2.next();\r
+      var1.set(Calendar.SECOND, 0);\r
+      int var4 = Integer.parseInt(var3.start.substring(2, 4));\r
+      int var5 = Integer.parseInt(var3.start.substring(5, 7));\r
+      var1.set(Calendar.HOUR_OF_DAY, var4);\r
+      var1.set(Calendar.MINUTE, var5);\r
+      var3.startTimeMillis = var1.getTimeInMillis();\r
+      var4 = Integer.parseInt(var3.end.substring(2, 4));\r
+      var5 = Integer.parseInt(var3.end.substring(5, 7));\r
+      var1.set(Calendar.HOUR_OF_DAY, var4);\r
+      var1.set(Calendar.MINUTE, var5);\r
+    }\r
+\r
   }\r
-  \r
+\r
   private void getStartAndEndStheartRateTime() {\r
-//    Calendar calendar = Calendar.getInstance();\r
-//    this.mTodayWeek = calendar.get(7);\r
-//    for (StheartRate stheartRate : this.stheartRateList) {\r
-//      calendar.set(13, 0);\r
-//      int i = Integer.parseInt(stheartRate.start.substring(2, 4));\r
-//      int j = Integer.parseInt(stheartRate.start.substring(5, 7));\r
-//      calendar.set(11, i);\r
-//      calendar.set(12, j);\r
-//      stheartRate.startTimeMillis = calendar.getTimeInMillis();\r
-//      i = Integer.parseInt(stheartRate.end.substring(2, 4));\r
-//      j = Integer.parseInt(stheartRate.end.substring(5, 7));\r
-//      calendar.set(11, i);\r
-//      calendar.set(12, j);\r
-//      stheartRate.endTimeMillis = calendar.getTimeInMillis();\r
-//    }\r
+    Calendar var1 = Calendar.getInstance();\r
+    this.mTodayWeek = var1.get(Calendar.DAY_OF_WEEK);\r
+\r
+    StheartRate var3;\r
+    for(Iterator var2 = this.stheartRateList.iterator(); var2.hasNext(); var3.endTimeMillis = var1.getTimeInMillis()) {\r
+      var3 = (StheartRate)var2.next();\r
+      var1.set(Calendar.SECOND, 0);\r
+      int var4 = Integer.parseInt(var3.start.substring(2, 4));\r
+      int var5 = Integer.parseInt(var3.start.substring(5, 7));\r
+      var1.set(Calendar.HOUR_OF_DAY, var4);\r
+      var1.set(Calendar.MINUTE, var5);\r
+      var3.startTimeMillis = var1.getTimeInMillis();\r
+      var4 = Integer.parseInt(var3.end.substring(2, 4));\r
+      var5 = Integer.parseInt(var3.end.substring(5, 7));\r
+      var1.set(Calendar.HOUR_OF_DAY, var4);\r
+      var1.set(Calendar.MINUTE, var5);\r
+    }\r
+\r
   }\r
-  \r
-  private void handSilence(Context paramContext, boolean paramBoolean) {\r
-    this.mValue_isSilence = paramBoolean;\r
+\r
+  private void handSilence(Context var1, boolean var2) {\r
+    this.mValue_isSilence = var2;\r
     if (this.isCalling) {\r
       this.haveHandSilence = true;\r
-      return;\r
-    } \r
-    this.haveHandSilence = false;\r
-    SharPreferenceUtil.setPrefBoolean(paramContext, "KEY_ISSILENCE", paramBoolean);\r
-    Intent intent2 = new Intent();\r
-    intent2.setAction("com.enqualcomm.support.ACTION_ISSILENCE2IMESSAGE");\r
-    intent2.putExtra("KEY_ISSILENCE", paramBoolean);\r
-    paramContext.sendBroadcast(intent2);\r
-    ComponentName componentName = new ComponentName("com.enqualcomm.support", "com.enqualcomm.support.CoreService");\r
-    Intent intent1 = (new Intent("com.enqualcomm.support.ACTION_VIDEO_END_CALL")).setComponent(componentName);\r
-    (this.mRuntime.getContextProxy()).context.startService(intent1);\r
+    } else {\r
+      this.haveHandSilence = false;\r
+      SharPreferenceUtil.setPrefBoolean(var1, "KEY_ISSILENCE", var2);\r
+      Intent var3 = new Intent();\r
+      var3.setAction("com.enqualcomm.support.ACTION_ISSILENCE2IMESSAGE");\r
+      var3.putExtra("KEY_ISSILENCE", var2);\r
+      var1.sendBroadcast(var3);\r
+      ComponentName var4 = new ComponentName("com.enqualcomm.support", "com.enqualcomm.support.CoreService");\r
+      Intent var5 = (new Intent("com.enqualcomm.support.ACTION_VIDEO_END_CALL")).setComponent(var4);\r
+      this.mRuntime.getContextProxy().context.startService(var5);\r
+    }\r
   }\r
-  \r
-  private void handleSilent(Runtime paramRuntime, boolean paramBoolean) {\r
-    int i = 0;//Calendar.getInstance().get(7);\r
-    if (i != this.mTodayWeek && (i != 1 || this.mTodayWeek != 8)) {\r
-      getSilentListStartAndEndTime();\r
-      queryNotice();\r
-    } \r
-    boolean bool = isSilentTime();\r
-    StringBuilder stringBuilder = new StringBuilder();\r
-    stringBuilder.append("inSilent=");\r
-    stringBuilder.append(bool);\r
-    Logger.i(stringBuilder.toString());\r
-    if (!this.mInSilent && bool) {\r
-      onSilentStateChange(true);\r
-      handSilence(this.mContext, true);\r
+\r
+  private void handleSilent(Runtime var1, boolean var2) {\r
+    int var3 = Calendar.getInstance().get(Calendar.DAY_OF_WEEK);\r
+    if (var3 != this.mTodayWeek && (var3 != 1 || this.mTodayWeek != 8)) {\r
+      this.getSilentListStartAndEndTime();\r
+      this.queryNotice();\r
+    }\r
+\r
+    boolean var4 = this.isSilentTime();\r
+    StringBuilder var5 = new StringBuilder();\r
+    var5.append("inSilent=");\r
+    var5.append(var4);\r
+    Logger.i(var5.toString());\r
+    if (!this.mInSilent && var4) {\r
+      this.onSilentStateChange(true);\r
+      this.handSilence(this.mContext, true);\r
       this.mDbHelper.upDateStatus("ON");\r
-    } else if (this.mInSilent && !bool) {\r
-      onSilentStateChange(false);\r
+    } else if (this.mInSilent && !var4) {\r
+      this.onSilentStateChange(false);\r
       this.mDbHelper.upDateStatus("OFF");\r
-      handSilence(this.mContext, false);\r
-    } \r
-    this.mInSilent = bool;\r
-    getStartAndEndStheartRateTime();\r
-    isStheartRateTime(paramBoolean);\r
+      this.handSilence(this.mContext, false);\r
+    }\r
+\r
+    this.mInSilent = var4;\r
+    this.getStartAndEndStheartRateTime();\r
+    this.isStheartRateTime(var2);\r
   }\r
-  \r
-  private boolean haveStartActivity(Context paramContext) {\r
-    int i = ((TelephonyManager)paramContext.getSystemService(Context.TELEPHONY_SERVICE)).getCallState();\r
-    if (1 != i && 2 != i) {\r
-      i = 1;\r
+\r
+  private boolean haveStartActivity(Context var1) {\r
+    int var2 = ((TelephonyManager)var1.getSystemService(Context.TELEPHONY_SERVICE)).getCallState();\r
+    boolean var3;\r
+    if (CALL_STATE_RINGING != var2 && CALL_STATE_OFFHOOK != var2) {\r
+      var3 = true;\r
     } else {\r
-      i = 0;\r
-    } \r
-    return (i != 0 && !this.mInSilent && !this.mRuntime.getBatteryLow());\r
+      var3 = false;\r
+    }\r
+\r
+    return var3 && !this.mInSilent && !this.mRuntime.getBatteryLow();\r
   }\r
-  \r
-  private boolean isAntioffTime(boolean paramBoolean) {\r
 \r
-    return false;\r
-    // Byte code:\r
-    //   0: invokestatic currentTimeMillis : ()J\r
-    //   3: lstore #4\r
-    //   5: aload_0\r
-    //   6: getfield sAntioffList : Ljava/util/ArrayList;\r
-    //   9: astore #8\r
-    //   11: aload_0\r
-    //   12: getfield mTodayWeek : I\r
-    //   15: istore_2\r
-    //   16: iconst_1\r
-    //   17: istore_1\r
-    //   18: iload_2\r
-    //   19: iconst_1\r
-    //   20: if_icmpne -> 34\r
-    //   23: aload_0\r
-    //   24: aload_0\r
-    //   25: getfield mTodayWeek : I\r
-    //   28: bipush #7\r
-    //   30: iadd\r
-    //   31: putfield mTodayWeek : I\r
-    //   34: aload #8\r
-    //   36: invokevirtual iterator : ()Ljava/util/Iterator;\r
-    //   39: astore #8\r
-    //   41: aload #8\r
-    //   43: invokeinterface hasNext : ()Z\r
-    //   48: ifeq -> 386\r
-    //   51: aload #8\r
-    //   53: invokeinterface next : ()Ljava/lang/Object;\r
-    //   58: checkcast com/enqualcomm/support/bean/Antioff\r
-    //   61: astore #9\r
-    //   63: aload #9\r
-    //   65: getfield week : Ljava/lang/String;\r
-    //   68: astore #10\r
-    //   70: new java/lang/StringBuilder\r
-    //   73: dup\r
-    //   74: invokespecial <init> : ()V\r
-    //   77: astore #11\r
-    //   79: aload #11\r
-    //   81: aload_0\r
-    //   82: getfield mTodayWeek : I\r
-    //   85: iconst_1\r
-    //   86: isub\r
-    //   87: invokevirtual append : (I)Ljava/lang/StringBuilder;\r
-    //   90: pop\r
-    //   91: aload #11\r
-    //   93: ldc_w ''\r
-    //   96: invokevirtual append : (Ljava/lang/String;)Ljava/lang/StringBuilder;\r
-    //   99: pop\r
-    //   100: aload #10\r
-    //   102: aload #11\r
-    //   104: invokevirtual toString : ()Ljava/lang/String;\r
-    //   107: invokevirtual contains : (Ljava/lang/CharSequence;)Z\r
-    //   110: ifeq -> 41\r
-    //   113: aload #9\r
-    //   115: getfield startTimeMillis : J\r
-    //   118: lload #4\r
-    //   120: lsub\r
-    //   121: lstore #6\r
-    //   123: lload #6\r
-    //   125: getstatic com/enqualcomm/support/CoreService.alarmCycle : I\r
-    //   128: bipush #60\r
-    //   130: imul\r
-    //   131: sipush #1000\r
-    //   134: imul\r
-    //   135: i2l\r
-    //   136: lcmp\r
-    //   137: ifge -> 237\r
-    //   140: lload #6\r
-    //   142: lconst_0\r
-    //   143: lcmp\r
-    //   144: ifle -> 237\r
-    //   147: aload #9\r
-    //   149: getfield start : Ljava/lang/String;\r
-    //   152: iconst_2\r
-    //   153: iconst_4\r
-    //   154: invokevirtual substring : (II)Ljava/lang/String;\r
-    //   157: invokestatic parseInt : (Ljava/lang/String;)I\r
-    //   160: istore_2\r
-    //   161: aload #9\r
-    //   163: getfield start : Ljava/lang/String;\r
-    //   166: iconst_5\r
-    //   167: bipush #7\r
-    //   169: invokevirtual substring : (II)Ljava/lang/String;\r
-    //   172: invokestatic parseInt : (Ljava/lang/String;)I\r
-    //   175: istore_3\r
-    //   176: aload_0\r
-    //   177: getfield mContext : Landroid/content/Context;\r
-    //   180: iload_2\r
-    //   181: iload_3\r
-    //   182: ldc_w 'com.enqualcomm.support.OTHER_ALARM_START'\r
-    //   185: invokestatic setTimeAlarm : (Landroid/content/Context;IILjava/lang/String;)V\r
-    //   188: new java/lang/StringBuilder\r
-    //   191: dup\r
-    //   192: invokespecial <init> : ()V\r
-    //   195: astore #10\r
-    //   197: aload #10\r
-    //   199: ldc_w '设置起始时间=hour'\r
-    //   202: invokevirtual append : (Ljava/lang/String;)Ljava/lang/StringBuilder;\r
-    //   205: pop\r
-    //   206: aload #10\r
-    //   208: iload_2\r
-    //   209: invokevirtual append : (I)Ljava/lang/StringBuilder;\r
-    //   212: pop\r
-    //   213: aload #10\r
-    //   215: ldc_w 'minute+'\r
-    //   218: invokevirtual append : (Ljava/lang/String;)Ljava/lang/StringBuilder;\r
-    //   221: pop\r
-    //   222: aload #10\r
-    //   224: iload_3\r
-    //   225: invokevirtual append : (I)Ljava/lang/StringBuilder;\r
-    //   228: pop\r
-    //   229: aload #10\r
-    //   231: invokevirtual toString : ()Ljava/lang/String;\r
-    //   234: invokestatic i : (Ljava/lang/Object;)V\r
-    //   237: aload #9\r
-    //   239: getfield endTimeMillis : J\r
-    //   242: lload #4\r
-    //   244: lsub\r
-    //   245: lstore #6\r
-    //   247: lload #6\r
-    //   249: getstatic com/enqualcomm/support/CoreService.alarmCycle : I\r
-    //   252: bipush #60\r
-    //   254: imul\r
-    //   255: sipush #1000\r
-    //   258: imul\r
-    //   259: i2l\r
-    //   260: lcmp\r
-    //   261: ifge -> 361\r
-    //   264: lload #6\r
-    //   266: lconst_0\r
-    //   267: lcmp\r
-    //   268: ifle -> 361\r
-    //   271: aload #9\r
-    //   273: getfield end : Ljava/lang/String;\r
-    //   276: iconst_2\r
-    //   277: iconst_4\r
-    //   278: invokevirtual substring : (II)Ljava/lang/String;\r
-    //   281: invokestatic parseInt : (Ljava/lang/String;)I\r
-    //   284: istore_2\r
-    //   285: aload #9\r
-    //   287: getfield end : Ljava/lang/String;\r
-    //   290: iconst_5\r
-    //   291: bipush #7\r
-    //   293: invokevirtual substring : (II)Ljava/lang/String;\r
-    //   296: invokestatic parseInt : (Ljava/lang/String;)I\r
-    //   299: istore_3\r
-    //   300: aload_0\r
-    //   301: getfield mContext : Landroid/content/Context;\r
-    //   304: iload_2\r
-    //   305: iload_3\r
-    //   306: ldc_w 'com.enqualcomm.support.OTHER_ALARM_END'\r
-    //   309: invokestatic setTimeAlarm : (Landroid/content/Context;IILjava/lang/String;)V\r
-    //   312: new java/lang/StringBuilder\r
-    //   315: dup\r
-    //   316: invokespecial <init> : ()V\r
-    //   319: astore #10\r
-    //   321: aload #10\r
-    //   323: ldc_w '设置结束时间=hour'\r
-    //   326: invokevirtual append : (Ljava/lang/String;)Ljava/lang/StringBuilder;\r
-    //   329: pop\r
-    //   330: aload #10\r
-    //   332: iload_2\r
-    //   333: invokevirtual append : (I)Ljava/lang/StringBuilder;\r
-    //   336: pop\r
-    //   337: aload #10\r
-    //   339: ldc_w 'minute+'\r
-    //   342: invokevirtual append : (Ljava/lang/String;)Ljava/lang/StringBuilder;\r
-    //   345: pop\r
-    //   346: aload #10\r
-    //   348: iload_3\r
-    //   349: invokevirtual append : (I)Ljava/lang/StringBuilder;\r
-    //   352: pop\r
-    //   353: aload #10\r
-    //   355: invokevirtual toString : ()Ljava/lang/String;\r
-    //   358: invokestatic i : (Ljava/lang/Object;)V\r
-    //   361: aload #9\r
-    //   363: getfield startTimeMillis : J\r
-    //   366: lload #4\r
-    //   368: lcmp\r
-    //   369: ifgt -> 41\r
-    //   372: aload #9\r
-    //   374: getfield endTimeMillis : J\r
-    //   377: lload #4\r
-    //   379: lcmp\r
-    //   380: ifle -> 41\r
-    //   383: goto -> 388\r
-    //   386: iconst_0\r
-    //   387: istore_1\r
-    //   388: aload_0\r
-    //   389: getfield mRuntime : Lcom/enqualcomm/support/bean/Runtime;\r
-    //   392: iload_1\r
-    //   393: invokevirtual setAntioffStatus : (Z)V\r
-    //   396: iload_1\r
-    //   397: ireturn }\r
+  private boolean isAntioffTime(boolean var1) {\r
+    long var2 = System.currentTimeMillis();\r
+    ArrayList var4 = this.sAntioffList;\r
+    int var5 = this.mTodayWeek;\r
+    var1 = true;\r
+    if (var5 == 1) {\r
+      this.mTodayWeek += 7;\r
+    }\r
+\r
+    Iterator var12 = var4.iterator();\r
+\r
+    while(true) {\r
+      if (!var12.hasNext()) {\r
+        var1 = false;\r
+        break;\r
+      }\r
+\r
+      Antioff var6 = (Antioff)var12.next();\r
+      String var7 = var6.week;\r
+      StringBuilder var8 = new StringBuilder();\r
+      var8.append(this.mTodayWeek - 1);\r
+      var8.append("");\r
+      if (var7.contains(var8.toString())) {\r
+        long var9 = var6.startTimeMillis - var2;\r
+        int var11;\r
+        if (var9 < (long)(CoreService.alarmCycle * 60 * 1000) && var9 > 0L) {\r
+          var11 = Integer.parseInt(var6.start.substring(2, 4));\r
+          var5 = Integer.parseInt(var6.start.substring(5, 7));\r
+          AlarmHelper.setTimeAlarm(this.mContext, var11, var5, "com.enqualcomm.support.OTHER_ALARM_START");\r
+          var8 = new StringBuilder();\r
+          var8.append("设置起始时间=hour");\r
+          var8.append(var11);\r
+          var8.append("minute+");\r
+          var8.append(var5);\r
+          Logger.i(var8.toString());\r
+        }\r
+\r
+        var9 = var6.endTimeMillis - var2;\r
+        if (var9 < (long)(CoreService.alarmCycle * 60 * 1000) && var9 > 0L) {\r
+          var11 = Integer.parseInt(var6.end.substring(2, 4));\r
+          var5 = Integer.parseInt(var6.end.substring(5, 7));\r
+          AlarmHelper.setTimeAlarm(this.mContext, var11, var5, "com.enqualcomm.support.OTHER_ALARM_END");\r
+          var8 = new StringBuilder();\r
+          var8.append("设置结束时间=hour");\r
+          var8.append(var11);\r
+          var8.append("minute+");\r
+          var8.append(var5);\r
+          Logger.i(var8.toString());\r
+        }\r
+\r
+        if (var6.startTimeMillis <= var2 && var6.endTimeMillis > var2) {\r
+          break;\r
+        }\r
+      }\r
+    }\r
+\r
+    this.mRuntime.setAntioffStatus(var1);\r
+    return var1;\r
   }\r
+\r
   private boolean isSilentTime() {\r
-    long l = System.currentTimeMillis();\r
-    if (this.mTodayWeek == 1)\r
-      this.mTodayWeek += 7; \r
-    for (Silent silent : silentList) {\r
-      String str = silent.week;\r
-      StringBuilder stringBuilder = new StringBuilder();\r
-      stringBuilder.append(this.mTodayWeek - 1);\r
-      stringBuilder.append("");\r
-      if (str.contains(stringBuilder.toString())) {\r
-        long l1 = silent.startTimeMillis - l;\r
-        if (l1 < (CoreService.alarmCycle * 60 * 1000) && l1 > 0L) {\r
-          int i = Integer.parseInt(silent.start.substring(2, 4));\r
-          int j = Integer.parseInt(silent.start.substring(5, 7));\r
-          AlarmHelper.setTimeAlarm(this.mContext, i, j, "com.enqualcomm.support.OTHER_ALARM_START");\r
-          StringBuilder stringBuilder1 = new StringBuilder();\r
-          stringBuilder1.append("设置起始时间=hour");\r
-          stringBuilder1.append(i);\r
-          stringBuilder1.append("minute+");\r
-          stringBuilder1.append(j);\r
-          Logger.i(stringBuilder1.toString());\r
-        } \r
-        l1 = silent.endTimeMillis - l;\r
-        if (l1 < (CoreService.alarmCycle * 60 * 1000) && l1 > 0L) {\r
-          int i = Integer.parseInt(silent.end.substring(2, 4));\r
-          int j = Integer.parseInt(silent.end.substring(5, 7));\r
-          AlarmHelper.setTimeAlarm(this.mContext, i, j, "com.enqualcomm.support.OTHER_ALARM_END");\r
-          StringBuilder stringBuilder1 = new StringBuilder();\r
-          stringBuilder1.append("设置结束时间=hour");\r
-          stringBuilder1.append(i);\r
-          stringBuilder1.append("minute+");\r
-          stringBuilder1.append(j);\r
-          Logger.i(stringBuilder1.toString());\r
-        } \r
-        if (silent.startTimeMillis <= l && silent.endTimeMillis > l)\r
-          return true; \r
-      } \r
-    } \r
-    return false;\r
+    long var1 = System.currentTimeMillis();\r
+    ArrayList var3 = this.silentList;\r
+    int var4 = this.mTodayWeek;\r
+    boolean var5 = true;\r
+    if (var4 == 1) {\r
+      this.mTodayWeek += 7;\r
+    }\r
+\r
+    Iterator var6 = var3.iterator();\r
+\r
+    while(true) {\r
+      if (!var6.hasNext()) {\r
+        var5 = false;\r
+        break;\r
+      }\r
+\r
+      Silent var12 = (Silent)var6.next();\r
+      String var7 = var12.week;\r
+      StringBuilder var8 = new StringBuilder();\r
+      var8.append(this.mTodayWeek - 1);\r
+      var8.append("");\r
+      if (var7.contains(var8.toString())) {\r
+        long var9 = var12.startTimeMillis - var1;\r
+        int var11;\r
+        StringBuilder var13;\r
+        if (var9 < (long)(CoreService.alarmCycle * 60 * 1000) && var9 > 0L) {\r
+          var11 = Integer.parseInt(var12.start.substring(2, 4));\r
+          var4 = Integer.parseInt(var12.start.substring(5, 7));\r
+          AlarmHelper.setTimeAlarm(this.mContext, var11, var4, "com.enqualcomm.support.OTHER_ALARM_START");\r
+          var13 = new StringBuilder();\r
+          var13.append("设置起始时间=hour");\r
+          var13.append(var11);\r
+          var13.append("minute+");\r
+          var13.append(var4);\r
+          Logger.i(var13.toString());\r
+        }\r
+\r
+        var9 = var12.endTimeMillis - var1;\r
+        if (var9 < (long)(CoreService.alarmCycle * 60 * 1000) && var9 > 0L) {\r
+          var11 = Integer.parseInt(var12.end.substring(2, 4));\r
+          var4 = Integer.parseInt(var12.end.substring(5, 7));\r
+          AlarmHelper.setTimeAlarm(this.mContext, var11, var4, "com.enqualcomm.support.OTHER_ALARM_END");\r
+          var13 = new StringBuilder();\r
+          var13.append("设置结束时间=hour");\r
+          var13.append(var11);\r
+          var13.append("minute+");\r
+          var13.append(var4);\r
+          Logger.i(var13.toString());\r
+        }\r
+\r
+        if (var12.startTimeMillis <= var1 && var12.endTimeMillis > var1) {\r
+          break;\r
+        }\r
+      }\r
+    }\r
+\r
+    return var5;\r
   }\r
-  \r
-  private boolean isStheartRateTime(boolean paramBoolean) {\r
-    long l = System.currentTimeMillis();\r
-    if (this.mTodayWeek == 1)\r
-      this.mTodayWeek += 7; \r
-    for (StheartRate stheartRate : stheartRateList) {\r
-      String str = stheartRate.week;\r
-      StringBuilder stringBuilder = new StringBuilder();\r
-      stringBuilder.append(this.mTodayWeek - 1);\r
-      stringBuilder.append("");\r
-      if (str.contains(stringBuilder.toString())) {\r
-        long l1 = stheartRate.startTimeMillis - l;\r
-        if (l1 < (CoreService.alarmCycle * 60 * 1000) && l1 > 0L) {\r
-          int i = Integer.parseInt(stheartRate.start.substring(2, 4));\r
-          int j = Integer.parseInt(stheartRate.start.substring(5, 7));\r
-          AlarmHelper.setTimeAlarm(this.mContext, i, j, "com.enqualcomm.support.OTHER_HEARTRATE_ALARM_START");\r
-        } \r
-        l1 = stheartRate.endTimeMillis - l;\r
-        if (l1 < (CoreService.alarmCycle * 60 * 1000) && l1 > 0L) {\r
-          int i = Integer.parseInt(stheartRate.end.substring(2, 4));\r
-          int j = Integer.parseInt(stheartRate.end.substring(5, 7));\r
-          AlarmHelper.setTimeAlarm(this.mContext, i, j, "com.enqualcomm.support.OTHER_HEARTRATE_ALARM_END");\r
-        } \r
-        if (stheartRate.startTimeMillis <= l && stheartRate.endTimeMillis > l) {\r
-          this.mInterval = stheartRate.interval;\r
-          if (!paramBoolean) {\r
-            AlarmHelper.setRealTimeAlarm(this.mContext, Integer.parseInt(this.mInterval), "com.eqc.heartrate.action.SILENT_START");\r
-            this.mRuntime.getContextProxy().sendStheartRateBroadcast("com.eqc.heartrate.action.SILENT_START", 0);\r
-          } \r
-          return true;\r
-        } \r
-      } \r
-    } \r
-    return false;\r
+\r
+  private boolean isStheartRateTime(boolean var1) {\r
+    long var2 = System.currentTimeMillis();\r
+    ArrayList var4 = this.stheartRateList;\r
+    if (this.mTodayWeek == 1) {\r
+      this.mTodayWeek += 7;\r
+    }\r
+\r
+    Iterator var12 = var4.iterator();\r
+\r
+    while(true) {\r
+      if (var12.hasNext()) {\r
+        StheartRate var5 = (StheartRate)var12.next();\r
+        String var6 = var5.week;\r
+        StringBuilder var7 = new StringBuilder();\r
+        var7.append(this.mTodayWeek - 1);\r
+        var7.append("");\r
+        if (!var6.contains(var7.toString())) {\r
+          continue;\r
+        }\r
+\r
+        long var8 = var5.startTimeMillis - var2;\r
+        int var10;\r
+        int var11;\r
+        if (var8 < (long)(CoreService.alarmCycle * 60 * 1000) && var8 > 0L) {\r
+          var10 = Integer.parseInt(var5.start.substring(2, 4));\r
+          var11 = Integer.parseInt(var5.start.substring(5, 7));\r
+          AlarmHelper.setTimeAlarm(this.mContext, var10, var11, "com.enqualcomm.support.OTHER_HEARTRATE_ALARM_START");\r
+        }\r
+\r
+        var8 = var5.endTimeMillis - var2;\r
+        if (var8 < (long)(CoreService.alarmCycle * 60 * 1000) && var8 > 0L) {\r
+          var10 = Integer.parseInt(var5.end.substring(2, 4));\r
+          var11 = Integer.parseInt(var5.end.substring(5, 7));\r
+          AlarmHelper.setTimeAlarm(this.mContext, var10, var11, "com.enqualcomm.support.OTHER_HEARTRATE_ALARM_END");\r
+        }\r
+\r
+        if (var5.startTimeMillis > var2 || var5.endTimeMillis <= var2) {\r
+          continue;\r
+        }\r
+\r
+        this.mInterval = var5.interval;\r
+        if (!var1) {\r
+          AlarmHelper.setRealTimeAlarm(this.mContext, Integer.parseInt(this.mInterval), "com.eqc.heartrate.action.SILENT_START");\r
+          this.mRuntime.getContextProxy().sendStheartRateBroadcast("com.eqc.heartrate.action.SILENT_START", 0);\r
+        }\r
+\r
+        var1 = true;\r
+        break;\r
+      }\r
+\r
+      var1 = false;\r
+      break;\r
+    }\r
+\r
+    return var1;\r
   }\r
-  \r
-  private void onSilentStateChange(boolean paramBoolean) {\r
-    if (this.alarms != null)\r
-      if (paramBoolean) {\r
-        cancelAlarm(this.alarms);\r
+\r
+  private void onSilentStateChange(boolean var1) {\r
+    if (this.alarms != null) {\r
+      if (var1) {\r
+        this.cancelAlarm(this.alarms);\r
       } else {\r
-        setNewAlarm(this.alarms);\r
-      }  \r
+        this.setNewAlarm(this.alarms);\r
+      }\r
+    }\r
+\r
     if (this.voiceNotice != null) {\r
-      if (paramBoolean) {\r
-        cancelNoticeAlarm(this.voiceNotice);\r
-        return;\r
-      } \r
-      setNewNoticeAlarm(this.voiceNotice);\r
-    } \r
+      if (var1) {\r
+        this.cancelNoticeAlarm(this.voiceNotice);\r
+      } else {\r
+        this.setNewNoticeAlarm(this.voiceNotice);\r
+      }\r
+    }\r
+\r
   }\r
-  \r
+\r
   private ArrayList<Alarm> queryAlarm() {\r
-    ArrayList arrayList = this.mDbHelper.queryAlarm();\r
+    ArrayList var1 = this.mDbHelper.queryAlarm();\r
     if (!this.mInSilent) {\r
-      if (this.alarms != null)\r
-        cancelAlarm(this.alarms); \r
-      setNewAlarm(arrayList);\r
-    } \r
-    return arrayList;\r
+      if (this.alarms != null) {\r
+        this.cancelAlarm(this.alarms);\r
+      }\r
+\r
+      this.setNewAlarm(var1);\r
+    }\r
+\r
+    return var1;\r
   }\r
-  \r
-  private ArrayList<Antioff> queryAntioff() { return this.mDbHelper.queryAntioff(true); }\r
-  \r
+\r
+  private ArrayList<Antioff> queryAntioff() {\r
+    return this.mDbHelper.queryAntioff(true);\r
+  }\r
+\r
   private ArrayList<NoticeContent> queryNotice() {\r
-    String str = TimeUtil.getSystemTime4();\r
-    ArrayList arrayList = this.mDbHelper.queryNotice(str);\r
+    String var1 = TimeUtil.getSystemTime4();\r
+    ArrayList var2 = this.mDbHelper.queryNotice(var1);\r
     if (!this.mInSilent) {\r
-      if (this.voiceNotice != null)\r
-        cancelNoticeAlarm(this.voiceNotice); \r
-      setNewNoticeAlarm(arrayList);\r
-    } \r
-    return arrayList;\r
+      if (this.voiceNotice != null) {\r
+        this.cancelNoticeAlarm(this.voiceNotice);\r
+      }\r
+\r
+      this.setNewNoticeAlarm(var2);\r
+    }\r
+\r
+    return var2;\r
   }\r
-  \r
-  private ArrayList<Silent> querySilent() { return this.mDbHelper.querySilence(true); }\r
-  \r
-  private ArrayList<StheartRate> queryStheartRate() { return this.mDbHelper.queryStheartRate(true); }\r
-  \r
-  private void setNewAlarm(ArrayList<Alarm> paramArrayList) {\r
-    Calendar calendar2 = Calendar.getInstance();\r
-    calendar2.set(SECOND, 0);\r
-    long l = System.currentTimeMillis();\r
-    Iterator iterator = paramArrayList.iterator();\r
-    Calendar calendar1 = calendar2;\r
-//    while (iterator.hasNext()) {\r
-//      PendingIntent pendingIntent2;\r
-//      Alarm alarm = (Alarm)iterator.next();\r
-//      calendar2 = calendar1;\r
-//      long l1 = l;\r
-//      if ("ON".equals(alarm.status)) {\r
-//        int i = Integer.parseInt(alarm.time.substring(2, 4));\r
-//        int j = Integer.parseInt(alarm.time.substring(5, 7));\r
-//        calendar1.set(HOUR_OF_DAY, i);\r
-//        calendar1.set(MINUTE, j);\r
-//        char[] arrayOfChar = alarm.week.toCharArray();\r
-//        j = arrayOfChar.length;\r
-//        i = 1;\r
-//        while (true) {\r
-//          calendar2 = calendar1;\r
-//          l1 = l;\r
-//          if (i < j) {\r
-//            char c = arrayOfChar[i] - '/';\r
-//            calendar1.set(7, c);\r
-//            l1 = calendar1.getTimeInMillis();\r
-//            if (l1 <= l)\r
-//              l1 += 604800000L;\r
-//            pendingIntent2 = getPendingIntent(alarm.time, alarm.week, alarm.ring, alarm.name, c);\r
-//            AlarmHelper.setAlarm(this.mAlarmManager, l1, pendingIntent2);\r
-//            i++;\r
-//            continue;\r
-//          }\r
-//          break;\r
-//        }\r
-//      }\r
-//      PendingIntent pendingIntent1 = pendingIntent2;\r
-//      l = l1;\r
-//    }\r
+\r
+  private ArrayList<Silent> querySilent() {\r
+    return this.mDbHelper.querySilence(true);\r
   }\r
-  \r
-  private void setNewNoticeAlarm(ArrayList<NoticeContent> paramArrayList) {\r
-    for (NoticeContent noticeContent : paramArrayList) {\r
-      String str1 = noticeContent.noticeTime;\r
-      String str2 = noticeContent.noticeName;\r
-      String str3 = noticeContent.noticeNumber;\r
-      String str4 = noticeContent.noticeID;\r
-      String str5 = noticeContent.noticeCategory;\r
-      String str6 = noticeContent.noticeFrequency;\r
-      String str7 = noticeContent.noticeContent;\r
-      Calendar calendar = Calendar.getInstance();\r
-      long l = System.currentTimeMillis();\r
-      calendar.set(SECOND, 0);\r
-      if (str1 != null) {\r
-        String str8 = str1.substring(0, 4);\r
-        String str9 = str1.substring(4, 6);\r
-        String str10 = str1.substring(6, 8);\r
-        String str11 = str1.substring(8, 10);\r
-        String str12 = str1.substring(10, 12);\r
-        calendar.set(YEAR, Integer.valueOf(str8).intValue());\r
-        calendar.set(MONTH, Integer.valueOf(str9).intValue() - 1);\r
-        calendar.set(DAY_OF_MONTH, Integer.valueOf(str10).intValue());\r
-        calendar.set(HOUR_OF_DAY, Integer.valueOf(str11).intValue());\r
-        calendar.set(MINUTE, Integer.valueOf(str12).intValue());\r
-        long l1 = calendar.getTimeInMillis();\r
-        if (l1 >= l) {\r
-          PendingIntent pendingIntent = getPendingIntent(str1, str2, str3, str4, str5, str6, str7);\r
-          AlarmHelper.setAlarm(this.mAlarmManager, l1, pendingIntent);\r
-        } \r
-      } \r
-    } \r
+\r
+  private ArrayList<StheartRate> queryStheartRate() {\r
+    return this.mDbHelper.queryStheartRate(true);\r
   }\r
-  \r
-  public void onAlarmClock(Connection paramConnection, Runtime paramRuntime) { handleSilent(paramRuntime, true); }\r
-  \r
-  public void onAttach(Connection paramConnection, Runtime paramRuntime) {\r
-    String str;\r
-    this.mRuntime = paramRuntime;\r
-    this.mConnection = paramConnection;\r
-    this.mContext = (paramRuntime.getContextProxy()).context;\r
+\r
+  private void setNewAlarm(ArrayList<Alarm> alarmArrayList) {\r
+    Calendar calendar = Calendar.getInstance();\r
+    calendar.set(Calendar.SECOND, 0);\r
+    long currentTime = System.currentTimeMillis();\r
+    Iterator itAlarm = alarmArrayList.iterator();\r
+\r
+\r
+    while (itAlarm.hasNext()){\r
+      Alarm alarm = (Alarm)itAlarm.next();\r
+      if ("ON".equals(alarm.status)) {\r
+        int hour = Integer.parseInt(alarm.time.substring(2, 4));\r
+        int minute = Integer.parseInt(alarm.time.substring(5, 7));\r
+        calendar.set(Calendar.HOUR_OF_DAY, hour);\r
+        calendar.set(Calendar.MINUTE, minute);\r
+\r
+        char[] weeklist = alarm.week.toCharArray();\r
+        int weeklistlen = weeklist.length;\r
+          for (int i = 1; i < weeklistlen; i++) {\r
+\r
+            long tmpTimeInMillis;\r
+            int dayofweek = weeklist[i] - 47;\r
+            calendar.set(Calendar.DAY_OF_WEEK, dayofweek);\r
+            tmpTimeInMillis = calendar.getTimeInMillis();\r
+            if (tmpTimeInMillis <= currentTime) {\r
+              tmpTimeInMillis += ONE_WEEK;\r
+            }\r
+            PendingIntent pendingIntent = this.getPendingIntent(alarm.time, alarm.week, alarm.ring, alarm.name, dayofweek);\r
+            AlarmHelper.setAlarm(this.mAlarmManager, tmpTimeInMillis, pendingIntent);\r
+          }\r
+\r
+      }\r
+    }\r
+  }\r
+\r
+  private void setNewNoticeAlarm(ArrayList<NoticeContent> var1) {\r
+    Iterator var19 = var1.iterator();\r
+\r
+    while(var19.hasNext()) {\r
+      NoticeContent var2 = (NoticeContent)var19.next();\r
+      String var3 = var2.noticeTime;\r
+      String var4 = var2.noticeName;\r
+      String var5 = var2.noticeNumber;\r
+      String var6 = var2.noticeID;\r
+      String var7 = var2.noticeCategory;\r
+      String var8 = var2.noticeFrequency;\r
+      String var9 = var2.noticeContent;\r
+      Calendar var10 = Calendar.getInstance();\r
+      long var11 = System.currentTimeMillis();\r
+      var10.set(Calendar.SECOND, 0);\r
+      if (var3 != null) {\r
+        String var13 = var3.substring(0, 4);\r
+        String var20 = var3.substring(4, 6);\r
+        String var14 = var3.substring(6, 8);\r
+        String var15 = var3.substring(8, 10);\r
+        String var16 = var3.substring(10, 12);\r
+        var10.set(Calendar.YEAR, Integer.valueOf(var13));\r
+        var10.set(Calendar.MONTH, Integer.valueOf(var20) - 1);\r
+        var10.set(Calendar.DATE, Integer.valueOf(var14));\r
+        var10.set(Calendar.HOUR_OF_DAY, Integer.valueOf(var15));\r
+        var10.set(Calendar.MINUTE, Integer.valueOf(var16));\r
+        long var17 = var10.getTimeInMillis();\r
+        if (var17 >= var11) {\r
+          PendingIntent var21 = this.getPendingIntent(var3, var4, var5, var6, var7, var8, var9);\r
+          AlarmHelper.setAlarm(this.mAlarmManager, var17, var21);\r
+        }\r
+      }\r
+    }\r
+\r
+  }\r
+\r
+  public void onAlarmClock(Connection var1, Runtime var2) {\r
+    this.handleSilent(var2, true);\r
+  }\r
+\r
+  public void onAttach(Connection var1, Runtime var2) {\r
+    this.mRuntime = var2;\r
+    this.mConnection = var1;\r
+    this.mContext = var2.getContextProxy().context;\r
     this.mAlarmManager = (AlarmManager)this.mContext.getSystemService(Context.ALARM_SERVICE);\r
-    this.mDbHelper = paramRuntime.getDbHelper();\r
-    this.silentList = querySilent();\r
-    getSilentListStartAndEndTime();\r
-    this.mInSilent = isSilentTime();\r
-    DBHelper dBHelper = this.mDbHelper;\r
+    this.mDbHelper = var2.getDbHelper();\r
+    this.silentList = this.querySilent();\r
+    this.getSilentListStartAndEndTime();\r
+    this.mInSilent = false;// this.isSilentTime();\r
+    DBHelper var3 = this.mDbHelper;\r
+    String var4;\r
     if (this.mInSilent) {\r
-      str = "ON";\r
+      var4 = "ON";\r
     } else {\r
-      str = "OFF";\r
-    } \r
-    dBHelper.upDateorInsertDeviceStatus(str);\r
-    handSilence(this.mContext, this.mInSilent);\r
-    this.stheartRateList = queryStheartRate();\r
-    getStartAndEndStheartRateTime();\r
-    this.mIsStheartRate = isStheartRateTime(false);\r
-    this.alarms = queryAlarm();\r
-    this.voiceNotice = queryNotice();\r
-    (paramRuntime.getContextProxy()).context.getContentResolver().registerContentObserver(ICContentProvider.SILENT_URI, false, this.mContentObserver);\r
-    this.mAlramReceiver = new AlramReceiver();\r
-    IntentFilter intentFilter = new IntentFilter();\r
-    intentFilter.addAction("com.enqualcomm.support.ACTION_NOTICE_ALARM_CHANGE");\r
-    intentFilter.addAction("com.enqualcomm.support.ACTION_ALARM_ALARM_CHANGE");\r
-    intentFilter.addAction("com.enqualcomm.support.STHEART_RATE_ALARM_CHANGE");\r
-    intentFilter.addAction("com.eqc.heartrate.action.RESULT");\r
-    this.mContext.registerReceiver(this.mAlramReceiver, intentFilter);\r
-    paramRuntime.getContextProxy().getTelephonyManager().listen(this.phoneStateListener, 32);\r
+      var4 = "OFF";\r
+    }\r
+\r
+    var3.upDateorInsertDeviceStatus(var4);\r
+    this.handSilence(this.mContext, this.mInSilent);\r
+    this.stheartRateList = this.queryStheartRate();\r
+    this.getStartAndEndStheartRateTime();\r
+    this.mIsStheartRate = this.isStheartRateTime(false);\r
+    this.alarms = this.queryAlarm();\r
+    this.voiceNotice = this.queryNotice();\r
+    var2.getContextProxy().context.getContentResolver().registerContentObserver(ICContentProvider.SILENT_URI, false, this.mContentObserver);\r
+    this.mAlramReceiver = new SilentManager.AlramReceiver();\r
+    IntentFilter var5 = new IntentFilter();\r
+    var5.addAction("com.enqualcomm.support.ACTION_NOTICE_ALARM_CHANGE");\r
+    var5.addAction("com.enqualcomm.support.ACTION_ALARM_ALARM_CHANGE");\r
+    var5.addAction("com.enqualcomm.support.STHEART_RATE_ALARM_CHANGE");\r
+    var5.addAction("com.eqc.heartrate.action.RESULT");\r
+    this.mContext.registerReceiver(this.mAlramReceiver, var5);\r
+    var2.getContextProxy().getTelephonyManager().listen(this.phoneStateListener, 32);\r
   }\r
-  \r
-  public void onDetach(Connection paramConnection, Runtime paramRuntime) {\r
-    (paramRuntime.getContextProxy()).context.getContentResolver().unregisterContentObserver(this.mContentObserver);\r
+\r
+  public void onDetach(Connection var1, Runtime var2) {\r
+    var2.getContextProxy().context.getContentResolver().unregisterContentObserver(this.mContentObserver);\r
     this.mContext.unregisterReceiver(this.mAlramReceiver);\r
   }\r
-  \r
-  public boolean onUserRequest(Intent paramIntent, Connection paramConnection, Runtime paramRuntime) {\r
-//    String[] arrayOfString = paramIntent.getAction();\r
-//    if ("com.enqualcomm.support.ACTION_CARE_ALARM".equals(arrayOfString)) {\r
-//      str = paramIntent.getDataString();\r
-//      arrayOfString = TimeUtil.getSystemTime();\r
-//      str.substring(6).split("\\.");\r
-//      int i = Integer.parseInt(str.substring(6).split("\\.")[1].substring(0, 2));\r
-//      int j = Integer.parseInt(str.substring(6).split("\\.")[0].substring(2));\r
-//      arrayOfString = arrayOfString.split(";")[1].split(":");\r
-//      int k = Integer.parseInt(arrayOfString[0]);\r
-//      int m = Integer.parseInt(arrayOfString[1]);\r
-//      if (j == k) {\r
-//        if (i != m)\r
-//          return false;\r
-//        if (haveStartActivity(this.mContext))\r
-//          try {\r
-//            Intent intent = new Intent("com.enqualcomm.icare.ALARM", Uri.parse(str));\r
-//            intent.putExtra("closeAlarm", 0);\r
-//            intent.addFlags(268435456);\r
-//            this.mContext.startActivity(intent);\r
-//            return false;\r
-//          } catch (Exception str) {\r
-//            str.printStackTrace();\r
-//            return false;\r
-//          }\r
-//      } else {\r
-//        return false;\r
-//      }\r
-//    } else if ("com.enqualcomm.support.ACTION_NOTICE_ALARM".equals(arrayOfString)) {\r
-//      str = str.getDataString();\r
-//      if (haveStartActivity(this.mContext))\r
-//        try {\r
-//          Intent intent = new Intent("com.enqualcomm.icare.NOTICE", Uri.parse(str));\r
-//          intent.addFlags(268435456);\r
-//          this.mContext.startActivity(intent);\r
-//          return false;\r
-//        } catch (Exception str) {\r
-//          str.printStackTrace();\r
-//          return false;\r
-//        }\r
-//    } else {\r
-//      boolean bool;\r
-//      Logger.i("静默闹钟来了");\r
-//      if ("com.eqc.heartrate.action.SILENT_START".equals(arrayOfString) || "com.enqualcomm.support.OTHER_HEARTRATE_ALARM_START".equals(arrayOfString)) {\r
-//        bool = true;\r
-//      } else {\r
-//        bool = false;\r
-//      }\r
-//      handleSilent(paramRuntime, bool ^ true);\r
-//    }\r
+\r
+  public boolean onUserRequest(Intent var1, Connection var2, Runtime var3) {\r
+    String var11 = var1.getAction();\r
+    if ("com.enqualcomm.support.ACTION_CARE_ALARM".equals(var11)) {\r
+      String var10 = var1.getDataString();\r
+      var11 = TimeUtil.getSystemTime();\r
+      var10.substring(6).split("\\.");\r
+      int var14 = Integer.parseInt(var10.substring(6).split("\\.")[1].substring(0, 2));\r
+      int var5 = Integer.parseInt(var10.substring(6).split("\\.")[0].substring(2));\r
+      String[] var12 = var11.split(";")[1].split(":");\r
+      int var6 = Integer.parseInt(var12[0]);\r
+      int var7 = Integer.parseInt(var12[1]);\r
+      if (var5 != var6 || var14 != var7) {\r
+        return false;\r
+      }\r
+\r
+      if (this.haveStartActivity(this.mContext)) {\r
+        try {\r
+          Intent var13 = new Intent("com.enqualcomm.icare.ALARM", Uri.parse(var10));\r
+          var13.putExtra("closeAlarm", 0);\r
+          var13.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);\r
+          this.mContext.startActivity(var13);\r
+        } catch (Exception var9) {\r
+          var9.printStackTrace();\r
+        }\r
+      }\r
+    } else if ("com.enqualcomm.support.ACTION_NOTICE_ALARM".equals(var11)) {\r
+      var11 = var1.getDataString();\r
+      if (this.haveStartActivity(this.mContext)) {\r
+        try {\r
+          var1 = new Intent("com.enqualcomm.icare.NOTICE", Uri.parse(var11));\r
+          var1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);\r
+          this.mContext.startActivity(var1);\r
+        } catch (Exception var8) {\r
+          var8.printStackTrace();\r
+        }\r
+      }\r
+    } else {\r
+      Logger.i("静默闹钟来了");\r
+      boolean var4;\r
+      if (!"com.eqc.heartrate.action.SILENT_START".equals(var11) && !"com.enqualcomm.support.OTHER_HEARTRATE_ALARM_START".equals(var11)) {\r
+        var4 = false;\r
+      } else {\r
+        var4 = true;\r
+      }\r
+\r
+      this.handleSilent(var3, var4 ^ true);\r
+    }\r
+\r
     return false;\r
   }\r
-  \r
-  public boolean onUserRequest(Message paramMessage, Connection paramConnection, Runtime paramRuntime) {\r
-    Messenger messenger = paramMessage.replyTo;\r
-    if (paramMessage.what == 1005)\r
-      callback(messenger, this.mInSilent); \r
+\r
+  public boolean onUserRequest(Message var1, Connection var2, Runtime var3) {\r
+    Messenger var4 = var1.replyTo;\r
+    if (var1.what == 1005) {\r
+      this.callback(var4, this.mInSilent);\r
+    }\r
+\r
     return false;\r
   }\r
-  \r
+\r
   class AlramReceiver extends BroadcastReceiver {\r
-    public void onReceive(Context param1Context, Intent param1Intent) {\r
-      String str = param1Intent.getAction();\r
-      StringBuilder stringBuilder = new StringBuilder();\r
-      stringBuilder.append("action = ");\r
-      stringBuilder.append(str);\r
-      Logger.i(stringBuilder.toString());\r
-      if ("com.enqualcomm.support.ACTION_NOTICE_ALARM_CHANGE".equals(str)) {\r
-//        SilentManager.access$402(SilentManager.this, SilentManager.this.queryNotice());\r
-        return;\r
-      } \r
-      if ("com.enqualcomm.support.ACTION_ALARM_ALARM_CHANGE".equals(str)) {\r
-//        SilentManager.access$602(SilentManager.this, SilentManager.this.queryAlarm());\r
-        return;\r
-      } \r
-      if ("com.enqualcomm.support.STHEART_RATE_ALARM_CHANGE".equals(str)) {\r
-//        SilentManager.access$802(SilentManager.this, SilentManager.this.queryStheartRate());\r
-//        SilentManager.this.getStartAndEndStheartRateTime();\r
-//        SilentManager.this.isStheartRateTime(false);\r
-        return;\r
-      } \r
-      if ("com.eqc.heartrate.action.RESULT".equals(str)) {\r
-        str = param1Intent.getStringExtra("time");\r
-        int i = param1Intent.getIntExtra("value", 0);\r
-        int j = param1Intent.getIntExtra("type", 0);\r
-        StringBuilder stringBuilder1 = new StringBuilder();\r
-        stringBuilder1.append("(");\r
-        stringBuilder1.append(str);\r
-        stringBuilder1.append("@");\r
-        stringBuilder1.append(i);\r
-        stringBuilder1.append("@");\r
-        stringBuilder1.append(j);\r
-        stringBuilder1.append(")");\r
-        str = stringBuilder1.toString();\r
-//        SilentManager.this.mConnection.send(API.H60(SilentManager.this.mRuntime, str));\r
-        return;\r
-      } \r
-      if ("com.enqualcomm.support.ACTION_ANTIOFF_ALARM_CHANGE".equals(str)) {\r
-//        SilentManager.access$1202(SilentManager.this, SilentManager.this.queryAntioff());\r
-//        SilentManager.this.getStartAndEndSantioffTime();\r
-//        SilentManager.access$1502(SilentManager.this, SilentManager.this.isAntioffTime(false));\r
-      } \r
+    AlramReceiver() {\r
     }\r
-  }\r
-}\r
 \r
+    public void onReceive(Context var1, Intent var2) {\r
+      String var6 = var2.getAction();\r
+      StringBuilder var3 = new StringBuilder();\r
+      var3.append("action = ");\r
+      var3.append(var6);\r
+      Logger.i(var3.toString());\r
+      if ("com.enqualcomm.support.ACTION_NOTICE_ALARM_CHANGE".equals(var6)) {\r
+        SilentManager.this.voiceNotice = SilentManager.this.queryNotice();\r
+      } else if ("com.enqualcomm.support.ACTION_ALARM_ALARM_CHANGE".equals(var6)) {\r
+        SilentManager.this.alarms = SilentManager.this.queryAlarm();\r
+      } else if ("com.enqualcomm.support.STHEART_RATE_ALARM_CHANGE".equals(var6)) {\r
+        SilentManager.this.stheartRateList = SilentManager.this.queryStheartRate();\r
+        SilentManager.this.getStartAndEndStheartRateTime();\r
+        SilentManager.this.isStheartRateTime(false);\r
+      } else if ("com.eqc.heartrate.action.RESULT".equals(var6)) {\r
+        var6 = var2.getStringExtra("time");\r
+        int var4 = var2.getIntExtra("value", 0);\r
+        int var5 = var2.getIntExtra("type", 0);\r
+        StringBuilder var7 = new StringBuilder();\r
+        var7.append("(");\r
+        var7.append(var6);\r
+        var7.append("@");\r
+        var7.append(var4);\r
+        var7.append("@");\r
+        var7.append(var5);\r
+        var7.append(")");\r
+        var6 = var7.toString();\r
+//        SilentManager.this.mConnection.send(API.H60(SilentManager.this.mRuntime, var6));\r
+      } else if ("com.enqualcomm.support.ACTION_ANTIOFF_ALARM_CHANGE".equals(var6)) {\r
+        SilentManager.this.sAntioffList = SilentManager.this.queryAntioff();\r
+        SilentManager.this.getStartAndEndSantioffTime();\r
+        SilentManager.this.mIsNeedAntioff = SilentManager.this.isAntioffTime(false);\r
+      }\r
+\r
+    }\r
+  }\r
+}
\ No newline at end of file
index d5f8195..2ce56df 100644 (file)
@@ -31,24 +31,27 @@ public class AlarmHelper {
       }\r
   }\r
 \r
-  //set repeat alarm\r
-  public static void setAlarm(AlarmManager paramAlarmManager, long hour, long minutes, PendingIntent paramPendingIntent) {\r
+  //设置闹铃\r
+  public static void setAlarm(AlarmManager paramAlarmManager, long triggerAtMillis, long intervalMillis, PendingIntent paramPendingIntent) {\r
 \r
-      try {\r
-        setImpl.invoke(paramAlarmManager, new Object[] { Integer.valueOf(0), Long.valueOf(hour), Long.valueOf(0L), Long.valueOf(minutes), paramPendingIntent, null });\r
-\r
-      } catch (Exception exception) {\r
-//        useApi19 = false;\r
+    paramAlarmManager.setRepeating(AlarmManager.RTC_WAKEUP, triggerAtMillis, intervalMillis, paramPendingIntent);\r
 \r
-        paramAlarmManager.setRepeating(AlarmManager.RTC_WAKEUP, hour, minutes, paramPendingIntent);\r
-        exception.printStackTrace();\r
-      }\r
+//    try {\r
+//        setImpl.invoke(paramAlarmManager, new Object[] { Integer.valueOf(0), Long.valueOf(triggerAtMillis), Long.valueOf(0L), Long.valueOf(intervalMillis), paramPendingIntent, null });\r
+//\r
+//      } catch (Exception exception) {\r
+////        useApi19 = false;\r
+//\r
+//        paramAlarmManager.setRepeating(AlarmManager.RTC_WAKEUP, triggerAtMillis, intervalMillis, paramPendingIntent);\r
+//        exception.printStackTrace();\r
+//      }\r
 \r
   }\r
-  \r
-  public static void setAlarm(AlarmManager paramAlarmManager, long paramLong, PendingIntent paramPendingIntent) {\r
-    setAlarm(paramAlarmManager, paramLong, 604800000L, paramPendingIntent);\r
-//    setAlarm(paramAlarmManager, paramLong, 0, paramPendingIntent);\r
+\r
+  //以周为单位设置循环闹铃\r
+  public static void setAlarm(AlarmManager paramAlarmManager, long triggerAtMillis, PendingIntent paramPendingIntent) {\r
+    setAlarm(paramAlarmManager, triggerAtMillis, ONE_WEEK, paramPendingIntent);\r
+\r
   }\r
   \r
   public static void setCleanStepCountAlarm(Context context, int hour, int minutes, String paramString) {\r
@@ -64,7 +67,7 @@ public class AlarmHelper {
     long l2 = calendar.getTimeInMillis();\r
     long l1 = l2;\r
     if (l2 < l3)\r
-      l1 = l2 + 86400000L;\r
+      l1 = l2 + ONE_DAY;\r
     alarmManager.cancel(pendingIntent);\r
     alarmManager.setExact(AlarmManager.RTC_WAKEUP, l1, pendingIntent);\r
   }\r
@@ -104,7 +107,7 @@ public class AlarmHelper {
     long l2 = calendar.getTimeInMillis();\r
     long l1 = l2;\r
     if (l2 < l3)\r
-      l1 = l2 + 86400000L;\r
+      l1 = l2 + ONE_DAY;\r
     alarmManager.cancel(pendingIntent);\r
     alarmManager.setExact(AlarmManager.RTC_WAKEUP, l1, pendingIntent);\r
   }\r
index 22a2b25..edea5e1 100644 (file)
@@ -60,8 +60,7 @@ public class ContextProxy {
     this.sensorManager = (SensorManager)context.getSystemService(Context.SENSOR_SERVICE);\r
   }\r
 \r
-  \r
-  private PendingIntent getPendingIntent(String paramString1, String paramString2, String paramString3, String paramString4, int paramInt) {\r
+  private PendingIntent getPendingIntent(String paramString1, String paramString2, String paramString3, String name, int paramInt) {\r
     StringBuilder stringBuilder = new StringBuilder("alarm:");\r
     stringBuilder.append(paramString1);\r
     stringBuilder.append(",");\r
@@ -69,33 +68,35 @@ public class ContextProxy {
     stringBuilder.append(",");\r
     stringBuilder.append(paramString3);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString4);\r
+    stringBuilder.append(name);\r
     stringBuilder.append(",");\r
     stringBuilder.append(paramInt);\r
     Intent intent = new Intent("com.enqualcomm.icare.ALARM", Uri.parse(stringBuilder.toString()));\r
     return PendingIntent.getActivity(this.context, 0, intent, FLAG_UPDATE_CURRENT);\r
   }\r
   \r
-  private PendingIntent getPendingIntent(String paramString1, String paramString2, String paramString3, String paramString4, String paramString5, String paramString6, String paramString7) {\r
+  private PendingIntent getPendingIntent(String noticeTime, String noticeName, String noticeNumber, String noticeID, String noticeCategory, String noticeFrequency, String noticeContent) {\r
     StringBuilder stringBuilder = new StringBuilder("notice:");\r
-    stringBuilder.append(paramString1);\r
+    stringBuilder.append(noticeTime);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString2);\r
+    stringBuilder.append(noticeName);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString3);\r
+    stringBuilder.append(noticeNumber);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString4);\r
+    stringBuilder.append(noticeID);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString5);\r
+    stringBuilder.append(noticeCategory);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString6);\r
+    stringBuilder.append(noticeFrequency);\r
     stringBuilder.append(",");\r
-    stringBuilder.append(paramString7);\r
+    stringBuilder.append(noticeContent);\r
     Intent intent = new Intent("com.enqualcomm.icare.NOTICE", Uri.parse(stringBuilder.toString()));\r
+\r
     return PendingIntent.getActivity(this.context, 0, intent, FLAG_UPDATE_CURRENT);\r
   }\r
   \r
   private void initAlarmAndSilent() {\r
+\r
     Calendar calendar2 = Calendar.getInstance();\r
     calendar2.set(Calendar.SECOND, 0);\r
     long l = System.currentTimeMillis();\r
@@ -116,11 +117,11 @@ public class ContextProxy {
           int i = arrayOfChar.length;\r
           byte b = 1;\r
           while (b < i) {\r
-            c = (char)(arrayOfChar[b] - '/');\r
+            c = (char)(arrayOfChar[b] - '/'); //将ascii数字字符转换为对应的数字\r
             calendar2.set(Calendar.DAY_OF_WEEK, c);\r
             long l1 = calendar2.getTimeInMillis();\r
             if (l1 <= l)\r
-              l1 += 604800000L;\r
+              l1 += ONE_WEEK;\r
             PendingIntent pendingIntent = getPendingIntent(str2, str1, str3, str4, c);\r
             AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
             b++;\r
@@ -221,7 +222,7 @@ public class ContextProxy {
             long l2 = calendar.getTimeInMillis();\r
             l1 = l2;\r
             if (l2 <= l)\r
-              l1 = l2 + 604800000L;\r
+              l1 = l2 + ONE_WEEK;\r
             PendingIntent pendingIntent = getPendingIntent(alarm.time, alarm.week, alarm.ring, alarm.name, c);\r
             AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
             j++;\r
index a4929df..1b68829 100644 (file)
+\r
 package com.enqualcomm.support.utils;\r
 \r
 import android.app.Dialog;\r
 import android.content.Context;\r
-import android.content.DialogInterface;\r
+import android.content.DialogInterface.OnClickListener;\r
 import android.view.LayoutInflater;\r
 import android.view.MotionEvent;\r
 import android.view.View;\r
 import android.view.ViewGroup;\r
+import android.view.View.OnTouchListener;\r
+import android.view.ViewGroup.LayoutParams;\r
 import android.widget.ImageButton;\r
 import android.widget.ImageView;\r
 import android.widget.TextView;\r
 \r
+import com.enqualcomm.support.R;\r
+\r
 public class CustomNotification extends Dialog {\r
-  public CustomNotification(Context paramContext) { super(paramContext); }\r
-  \r
-  public CustomNotification(Context paramContext, int paramInt) { super(paramContext, paramInt); }\r
-  \r
+  public CustomNotification(Context var1) {\r
+    super(var1);\r
+  }\r
+\r
+  public CustomNotification(Context var1, int var2) {\r
+    super(var1, var2);\r
+  }\r
+\r
   public static class Builder {\r
     private View contentView;\r
-    \r
     private String content_messgae;\r
-    \r
     private Context context;\r
-    \r
     private CustomNotification mDialog;\r
-    \r
     private String message;\r
-    \r
     private int msg_count;\r
-    \r
     private OnClickListener negativeButtonClickListener;\r
-\r
     private String negativeButtonText;\r
-\r
     private OnClickListener positiveButtonClickListener;\r
-\r
     private String positiveButtonText;\r
-\r
     private int time;\r
-\r
     private String title;\r
-\r
     private int titleImg;\r
+    private OnTouchListener viewOnTouchListener;\r
 \r
-    private View.OnTouchListener viewOnTouchListener;\r
-\r
-    public Builder(Context param1Context) { this.context = param1Context; }\r
+    public Builder(Context var1) {\r
+      this.context = var1;\r
+    }\r
 \r
     private CustomNotification getDialogInstance() {\r
-//      this.mDialog = new CustomNotification(this.context, 2131689630);\r
-//      View view = ((LayoutInflater)this.context.getSystemService("layout_inflater")).inflate(2131361841, null);\r
-//      this.mDialog.addContentView(view, new ViewGroup.LayoutParams(-1, -2));\r
-//      ((ImageView)view.findViewById(2131230809)).setImageResource(this.titleImg);\r
-//      ((TextView)view.findViewById(2131230876)).setText(this.title);\r
-//      if (this.time <= 0) {\r
-//        ((TextView)view.findViewById(2131230875)).setText(this.context.getText(2131624052));\r
-//      } else {\r
-//        StringBuilder stringBuilder = new StringBuilder();\r
-//        stringBuilder.append(String.valueOf(this.time));\r
-//        stringBuilder.append(this.context.getText(2131624054));\r
-//        String str = stringBuilder.toString();\r
-//        ((TextView)view.findViewById(2131230875)).setText(str);\r
-//      }\r
-//      if (this.positiveButtonText != null) {\r
-//        ((ImageButton)view.findViewById(2131230836)).setImageResource(2131165276);\r
-//        if (this.positiveButtonClickListener != null) {\r
-//          final CustomNotification finalDialog1 = this.mDialog;\r
-//          ((ImageButton)view.findViewById(2131230836)).setOnClickListener(new View.OnClickListener() {\r
-//                public void onClick(View param2View) { CustomNotification.Builder.this.positiveButtonClickListener.onClick(finalDialog, -1); }\r
-//              });\r
-//        }\r
-//      } else {\r
-//        view.findViewById(2131230836).setVisibility(View.GONE);\r
-//      }\r
-//      if (this.negativeButtonText != null) {\r
-//        ((ImageButton)view.findViewById(2131230825)).setImageResource(2131165273);\r
-//        if (this.negativeButtonClickListener != null) {\r
-//          final CustomNotification finalDialog1 = this.mDialog;\r
-//          ((ImageButton)view.findViewById(2131230825)).setOnClickListener(new View.OnClickListener() {\r
-//                public void onClick(View param2View) { CustomNotification.Builder.this.negativeButtonClickListener.onClick(finalDialog1, -2); }\r
-//              });\r
-//        }\r
-//      } else {\r
-//        view.findViewById(2131230825).setVisibility(8);\r
-//      }\r
-//      if (this.message != null)\r
-//        if (this.msg_count > 0) {\r
-//          StringBuilder stringBuilder = new StringBuilder();\r
-//          stringBuilder.append(this.message);\r
-//          stringBuilder.append("(");\r
-//          stringBuilder.append(String.valueOf(this.msg_count));\r
-//          stringBuilder.append(")");\r
-//          String str = stringBuilder.toString();\r
-//          ((TextView)view.findViewById(2131230822)).setText(str);\r
-//        } else {\r
-//          ((TextView)view.findViewById(2131230822)).setText(this.message);\r
-//        }\r
-//      if (this.content_messgae != null)\r
-//        ((TextView)view.findViewById(2131230793)).setText(this.content_messgae);\r
-//      if (this.viewOnTouchListener != null)\r
-//        view.setOnTouchListener(new View.OnTouchListener() {\r
-//              public boolean onTouch(View param2View, MotionEvent param2MotionEvent) {\r
-//                CustomNotification.Builder.this.viewOnTouchListener.onTouch(param2View, param2MotionEvent);\r
-//                return true;\r
-//              }\r
-//            });\r
-//      this.mDialog.setContentView(view);\r
+      this.mDialog = new CustomNotification(this.context, R.style.Dialog);\r
+      View var1 = ((LayoutInflater)this.context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.notification_wechat_layout, (ViewGroup)null);\r
+      this.mDialog.addContentView(var1, new LayoutParams(-1, -2));\r
+      ((ImageView)var1.findViewById(R.id.funcImg)).setImageResource(this.titleImg);\r
+      ((TextView)var1.findViewById(R.id.title)).setText(this.title);\r
+      StringBuilder var2;\r
+      String var3;\r
+      if (this.time <= 0) {\r
+        ((TextView)var1.findViewById(R.id.time)).setText(this.context.getText(R.string.notification_current));\r
+      } else {\r
+        var2 = new StringBuilder();\r
+        var2.append(String.valueOf(this.time));\r
+        var2.append(this.context.getText(R.string.notification_time_unit));\r
+        var3 = var2.toString();\r
+        ((TextView)var1.findViewById(R.id.time)).setText(var3);\r
+      }\r
+\r
+      final CustomNotification  dialog = this.mDialog;\r
+      ;\r
+      if (this.positiveButtonText != null) {\r
+        ((ImageButton)var1.findViewById(R.id.positiveButton)).setImageResource(R.drawable.btn_ok_selector);\r
+        if (this.positiveButtonClickListener != null) {\r
+          ((ImageButton)var1.findViewById(R.id.positiveButton)).setOnClickListener(new android.view.View.OnClickListener() {\r
+            public void onClick(View var1) {\r
+              Builder.this.positiveButtonClickListener.onClick(dialog, -1);\r
+            }\r
+          });\r
+        }\r
+      } else {\r
+        var1.findViewById(R.id.positiveButton).setVisibility(View.GONE);\r
+      }\r
+\r
+      if (this.negativeButtonText != null) {\r
+        ((ImageButton)var1.findViewById(R.id.negativeButton)).setImageResource(R.drawable.btn_cancel_selector);\r
+        if (this.negativeButtonClickListener != null) {\r
+          ((ImageButton)var1.findViewById(R.id.negativeButton)).setOnClickListener(new android.view.View.OnClickListener() {\r
+            public void onClick(View var1) {\r
+              Builder.this.negativeButtonClickListener.onClick(dialog, -2);\r
+            }\r
+          });\r
+        }\r
+      } else {\r
+        var1.findViewById(R.id.negativeButton).setVisibility(View.GONE);\r
+      }\r
+\r
+      if (this.message != null) {\r
+        if (this.msg_count > 0) {\r
+          var2 = new StringBuilder();\r
+          var2.append(this.message);\r
+          var2.append("(");\r
+          var2.append(String.valueOf(this.msg_count));\r
+          var2.append(")");\r
+          var3 = var2.toString();\r
+          ((TextView)var1.findViewById(R.id.message)).setText(var3);\r
+        } else {\r
+          ((TextView)var1.findViewById(R.id.message)).setText(this.message);\r
+        }\r
+      }\r
+\r
+      if (this.content_messgae != null) {\r
+        ((TextView)var1.findViewById(R.id.content)).setText(this.content_messgae);\r
+      }\r
+\r
+      if (this.viewOnTouchListener != null) {\r
+        var1.setOnTouchListener(new OnTouchListener() {\r
+          public boolean onTouch(View var1, MotionEvent var2) {\r
+            Builder.this.viewOnTouchListener.onTouch(var1, var2);\r
+            return true;\r
+          }\r
+        });\r
+      }\r
+\r
+      this.mDialog.setContentView(var1);\r
       return this.mDialog;\r
     }\r
-    \r
-    public CustomNotification create() { // Byte code:\r
-      //   0: aload_0\r
-      //   1: getfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
-      //   4: ifnonnull -> 37\r
-      //   7: ldc com/enqualcomm/support/util/CustomNotification\r
-      //   9: monitorenter\r
-      //   10: aload_0\r
-      //   11: getfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
-      //   14: ifnonnull -> 25\r
-      //   17: aload_0\r
-      //   18: aload_0\r
-      //   19: invokespecial getDialogInstance : ()Lcom/enqualcomm/support/util/CustomNotification;\r
-      //   22: putfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
-      //   25: ldc com/enqualcomm/support/util/CustomNotification\r
-      //   27: monitorexit\r
-      //   28: goto -> 37\r
-      //   31: astore_1\r
-      //   32: ldc com/enqualcomm/support/util/CustomNotification\r
-      //   34: monitorexit\r
-      //   35: aload_1\r
-      //   36: athrow\r
-      //   37: aload_0\r
-      //   38: getfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
-      //   41: areturn\r
-      // Exception table:\r
-      //   from        to      target  type\r
-      //   10  25      31      finally\r
-      //   25  28      31      finally\r
-      //   32  35      31      finally }\r
-      return mDialog;\r
-    }\r
-    public Builder setContentMessage(String param1String) {\r
-      this.content_messgae = param1String;\r
+\r
+    public CustomNotification create() {\r
+      if (this.mDialog == null) {\r
+        synchronized(CustomNotification.class){}\r
+\r
+        Throwable var10000;\r
+        boolean var10001;\r
+        label144: {\r
+          try {\r
+            if (this.mDialog == null) {\r
+              this.mDialog = this.getDialogInstance();\r
+            }\r
+          } catch (Throwable var13) {\r
+            var10000 = var13;\r
+            var10001 = false;\r
+            break label144;\r
+          }\r
+\r
+          label141:\r
+          try {\r
+            return this.mDialog;\r
+          } catch (Throwable var12) {\r
+            var10000 = var12;\r
+            var10001 = false;\r
+            break label141;\r
+          }\r
+        }\r
+\r
+        while(true) {\r
+          Throwable var1 = var10000;\r
+\r
+          try {\r
+            throw var1;\r
+          } catch (Throwable var11) {\r
+            var10000 = var11;\r
+            var10001 = false;\r
+            continue;\r
+          }\r
+        }\r
+      } else {\r
+        return this.mDialog;\r
+      }\r
+    }\r
+\r
+    public CustomNotification.Builder setContentMessage(String var1) {\r
+      this.content_messgae = var1;\r
       return this;\r
     }\r
-    \r
-    public Builder setContentView(View param1View) {\r
-      this.contentView = param1View;\r
+\r
+    public CustomNotification.Builder setContentView(View var1) {\r
+      this.contentView = var1;\r
       return this;\r
     }\r
-    \r
-    public Builder setLayoutViewClick(View.OnTouchListener param1OnTouchListener) {\r
-      this.viewOnTouchListener = param1OnTouchListener;\r
+\r
+    public CustomNotification.Builder setLayoutViewClick(OnTouchListener var1) {\r
+      this.viewOnTouchListener = var1;\r
       return this;\r
     }\r
-    \r
-    public Builder setMessage(int param1Int) {\r
-      this.message = (String)this.context.getText(param1Int);\r
+\r
+    public CustomNotification.Builder setMessage(int var1) {\r
+      this.message = (String)this.context.getText(var1);\r
       return this;\r
     }\r
-    \r
-    public Builder setMessage(String param1String) {\r
-      this.message = param1String;\r
+\r
+    public CustomNotification.Builder setMessage(String var1) {\r
+      this.message = var1;\r
       return this;\r
     }\r
-    \r
-    public Builder setMessage(String param1String, int param1Int) {\r
-      this.message = param1String;\r
-      this.msg_count = param1Int;\r
+\r
+    public CustomNotification.Builder setMessage(String var1, int var2) {\r
+      this.message = var1;\r
+      this.msg_count = var2;\r
       return this;\r
     }\r
-    \r
-    public Builder setNegativeButton(int param1Int, DialogInterface.OnClickListener param1OnClickListener) {\r
-      this.negativeButtonText = (String)this.context.getText(param1Int);\r
-      this.negativeButtonClickListener = param1OnClickListener;\r
+\r
+    public CustomNotification.Builder setNegativeButton(int var1, OnClickListener var2) {\r
+      this.negativeButtonText = (String)this.context.getText(var1);\r
+      this.negativeButtonClickListener = var2;\r
       return this;\r
     }\r
-    \r
-    public Builder setNegativeButton(String param1String, DialogInterface.OnClickListener param1OnClickListener) {\r
-      this.negativeButtonText = param1String;\r
-      this.negativeButtonClickListener = param1OnClickListener;\r
+\r
+    public CustomNotification.Builder setNegativeButton(String var1, OnClickListener var2) {\r
+      this.negativeButtonText = var1;\r
+      this.negativeButtonClickListener = var2;\r
       return this;\r
     }\r
-    \r
-    public Builder setPositiveButton(int param1Int, DialogInterface.OnClickListener param1OnClickListener) {\r
-      this.positiveButtonText = (String)this.context.getText(param1Int);\r
-      this.positiveButtonClickListener = param1OnClickListener;\r
+\r
+    public CustomNotification.Builder setPositiveButton(int var1, OnClickListener var2) {\r
+      this.positiveButtonText = (String)this.context.getText(var1);\r
+      this.positiveButtonClickListener = var2;\r
       return this;\r
     }\r
-    \r
-    public Builder setPositiveButton(String param1String, DialogInterface.OnClickListener param1OnClickListener) {\r
-      this.positiveButtonText = param1String;\r
-      this.positiveButtonClickListener = param1OnClickListener;\r
+\r
+    public CustomNotification.Builder setPositiveButton(String var1, OnClickListener var2) {\r
+      this.positiveButtonText = var1;\r
+      this.positiveButtonClickListener = var2;\r
       return this;\r
     }\r
-    \r
-    public Builder setTitle(int param1Int) {\r
-      this.title = (String)this.context.getText(param1Int);\r
+\r
+    public CustomNotification.Builder setTitle(int stringID) {\r
+      this.title = (String)this.context.getText(stringID);\r
       return this;\r
     }\r
-    \r
-    public Builder setTitle(int param1Int1, int param1Int2, int param1Int3) {\r
-      this.titleImg = param1Int1;\r
-      this.title = (String)this.context.getText(param1Int2);\r
-      this.time = param1Int3;\r
+\r
+    public CustomNotification.Builder setTitle(int ImgResID, int stringID, int _time) {\r
+      this.titleImg = ImgResID;\r
+      this.title = (String)this.context.getText(stringID);\r
+      this.time = _time;\r
       return this;\r
     }\r
-    \r
-    public Builder setTitle(String param1String) {\r
-      this.title = param1String;\r
+\r
+    public CustomNotification.Builder setTitle(String var1) {\r
+      this.title = var1;\r
       return this;\r
     }\r
   }\r
 }\r
-\r
index 772e638..79ad8ef 100644 (file)
@@ -432,16 +432,16 @@ public class DBHelper {
 \r
   public ArrayList<Alarm> queryAlarm() {\r
     ArrayList var1 = new ArrayList();\r
-    Cursor var2 = this.cr.query(ICContentProvider.ALARM_URI, (String[])null, (String)null, (String[])null, (String)null);\r
-    if (var2 != null) {\r
+    Cursor cursor = this.cr.query(ICContentProvider.ALARM_URI, (String[])null, (String)null, (String[])null, (String)null);\r
+    if (cursor != null) {\r
       while(true) {\r
-        if (!var2.moveToNext()) {\r
-          var2.close();\r
+        if (!cursor.moveToNext()) {\r
+          cursor.close();\r
           break;\r
         }\r
 \r
-        if ("ON".equals(var2.getString(4))) {\r
-          var1.add(new Alarm(var2.getString(1), var2.getString(2), var2.getString(3), var2.getString(4), var2.getString(5)));\r
+        if ("ON".equals(cursor.getString(4))) {\r
+          var1.add(new Alarm(cursor.getString(1), cursor.getString(2), cursor.getString(3), cursor.getString(4), cursor.getString(5)));\r
         }\r
       }\r
     }\r
@@ -507,28 +507,6 @@ public class DBHelper {
 \r
     return var3;\r
   }\r
-//\r
-//  public DownloadInfo queryDownloadNumber(String var1) {\r
-//    DownloadInfo var4 = new DownloadInfo(0, 0, "");\r
-//    StringBuilder var5 = new StringBuilder("IMSI=");\r
-//    var5.append(var1);\r
-//    var1 = var5.toString();\r
-//    Cursor var6 = this.cr.query(ICContentProvider.DOWNLOADINFO_URL, (String[])null, var1, (String[])null, (String)null);\r
-//    if (var6 != null) {\r
-//      if (var6.moveToNext()) {\r
-//        String var7 = var6.getString(2);\r
-//        int var2 = Integer.parseInt(var6.getString(3));\r
-//        int var3 = Integer.parseInt(var6.getString(4));\r
-//        var4.setNumber(var2);\r
-//        var4.setDownloadMonth(var7);\r
-//        var4.setTotalNumber(var3);\r
-//      }\r
-//\r
-//      var6.close();\r
-//    }\r
-//\r
-//    return var4;\r
-//  }\r
 \r
   public ArrayList<NoticeContent> queryNotice(String var1) {\r
     ArrayList var2 = new ArrayList();\r
@@ -686,60 +664,51 @@ public class DBHelper {
     this.cr.delete(ICContentProvider.UNREAD_MSG_URI, (String)null, (String[])null);\r
   }\r
 \r
-  public void saveAlarm(ArrayList<Alarm> var1) {\r
-    this.cr.delete(ICContentProvider.ALARM_URI, (String)null, (String[])null);\r
-    int var3 = var1.size();\r
-    if (var3 != 0) {\r
-      ContentValues[] var4 = new ContentValues[var3];\r
-\r
-      for(int var2 = 0; var2 < var3; ++var2) {\r
-        Alarm var5 = (Alarm)var1.get(var2);\r
-        ContentValues var6 = new ContentValues();\r
-        var4[var2] = var6;\r
-        var6.put("TIME", var5.time);\r
-        var6.put("WEEK", var5.week);\r
-        var6.put("RING", var5.ring);\r
-        var6.put("STATUS", var5.status);\r
-        var6.put("NAME", var5.name);\r
+  public void saveAlarm(ArrayList<Alarm> paramArrayList) {\r
+    this.cr.delete(ICContentProvider.ALARM_URI, null, null);\r
+    int i = paramArrayList.size();\r
+    if (i != 0) {\r
+      ContentValues[] arrayOfContentValues = new ContentValues[i];\r
+      for (byte b = 0; b < i; b++) {\r
+        Alarm alarm = paramArrayList.get(b);\r
+        ContentValues contentValues = new ContentValues();\r
+        arrayOfContentValues[b] = contentValues;\r
+        contentValues.put("TIME", alarm.time);\r
+        contentValues.put("WEEK", alarm.week);\r
+        contentValues.put("RING", alarm.ring);\r
+        contentValues.put("STATUS", alarm.status);\r
+        contentValues.put("NAME", alarm.name);\r
       }\r
-\r
-      this.cr.bulkInsert(ICContentProvider.ALARM_URI, var4);\r
+      this.cr.bulkInsert(ICContentProvider.ALARM_URI, arrayOfContentValues);\r
     }\r
-\r
     this.context.sendBroadcast(new Intent("com.enqualcomm.support.ACTION_ALARM_ALARM_CHANGE"));\r
   }\r
 \r
-  public void saveAntioff(ArrayList<Antioff> var1) {\r
-    Cursor var5 = this.cr.query(ICContentProvider.ANTIOFF_URI, (String[])null, (String)null, (String[])null, (String)null);\r
-    String var4;\r
-    if (var5 != null) {\r
-      for(var4 = null; var5.moveToNext(); var4 = var5.getString(5)) {\r
-      }\r
-\r
-      var5.close();\r
+  public void saveAntioff(ArrayList<Antioff> paramArrayList) {\r
+    String str;\r
+    Cursor cursor = this.cr.query(ICContentProvider.ANTIOFF_URI, null, null, null, null);\r
+    if (cursor != null) {\r
+      for (str = null; cursor.moveToNext(); str = cursor.getString(5));\r
+      cursor.close();\r
     } else {\r
-      var4 = null;\r
-    }\r
-\r
-    this.cr.delete(ICContentProvider.ANTIOFF_URI, (String)null, (String[])null);\r
-    int var3 = var1.size();\r
-    if (var3 != 0) {\r
-      ContentValues[] var8 = new ContentValues[var3];\r
-\r
-      for(int var2 = 0; var2 < var3; ++var2) {\r
-        Antioff var6 = (Antioff)var1.get(var2);\r
-        ContentValues var7 = new ContentValues();\r
-        var8[var2] = var7;\r
-        var7.put("START_TIME", var6.start);\r
-        var7.put("END_TIME", var6.end);\r
-        var7.put("WEEK", var6.week);\r
-        var7.put("STATUS", var6.status);\r
-        var7.put("CUR_SYS_STATUS", var4);\r
+      str = null;\r
+    }\r
+    this.cr.delete(ICContentProvider.ANTIOFF_URI, null, null);\r
+    int i = paramArrayList.size();\r
+    if (i != 0) {\r
+      ContentValues[] arrayOfContentValues = new ContentValues[i];\r
+      for (byte b = 0; b < i; b++) {\r
+        Antioff antioff = paramArrayList.get(b);\r
+        ContentValues contentValues = new ContentValues();\r
+        arrayOfContentValues[b] = contentValues;\r
+        contentValues.put("START_TIME", antioff.start);\r
+        contentValues.put("END_TIME", antioff.end);\r
+        contentValues.put("WEEK", antioff.week);\r
+        contentValues.put("STATUS", antioff.status);\r
+        contentValues.put("CUR_SYS_STATUS", str);\r
       }\r
-\r
-      this.cr.bulkInsert(ICContentProvider.ANTIOFF_URI, var8);\r
+      this.cr.bulkInsert(ICContentProvider.ANTIOFF_URI, arrayOfContentValues);\r
     }\r
-\r
     this.context.sendBroadcast(new Intent("com.enqualcomm.support.ACTION_ANTIOFF_ALARM_CHANGE"));\r
   }\r
 \r
@@ -943,7 +912,6 @@ public class DBHelper {
         this.cr.insert(ICContentProvider.DEVICESTATUS_URL, var3);\r
         return;\r
       }\r
-\r
       this.cr.update(ICContentProvider.DEVICESTATUS_URL, var3, (String)null, (String[])null);\r
     }\r
 \r
index e489cc2..2655236 100644 (file)
@@ -131,7 +131,13 @@ public class DeviceInfoUtil {
 \r
   public static String getSWVersionDisplayName(){ return Build.DISPLAY;}\r
 \r
-  \r
+  public static boolean isTopActivity(Context paramContext) {\r
+    ArrayList<String> arrayList = new ArrayList();\r
+    arrayList.add("com.enqualcomm.imessage.ui.chat.ChatActivity_");\r
+    return arrayList.contains(((ActivityManager.RunningTaskInfo)((ActivityManager)paramContext.getSystemService(Context.ACTIVITY_SERVICE)).getRunningTasks(1).get(0)).topActivity.getClassName());\r
+  }\r
+\r
+\r
   public static void setLockSimInfo(Context paramContext) {\r
     Settings.System.putInt(paramContext.getContentResolver(), "com.eqc.watch.launcher.SimIsBlocked", 1); }\r
 }\r
index b1861e4..1110418 100644 (file)
@@ -1,84 +1,70 @@
 package com.enqualcomm.support.utils;\r
 \r
-import android.content.BroadcastReceiver;\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.content.IntentFilter;\r
-import android.net.ConnectivityManager;\r
-import android.net.NetworkInfo;\r
-\r
-\r
-import com.enqualcomm.support.service.KeepAlive;\r
-\r
-import rx.Observable;\r
-import rx.subjects.BehaviorSubject;\r
+        import android.content.BroadcastReceiver;\r
+        import android.content.Context;\r
+        import android.content.Intent;\r
+        import android.content.IntentFilter;\r
+        import android.net.ConnectivityManager;\r
+        import android.net.NetworkInfo;\r
+        import com.enqualcomm.support.service.KeepAlive;\r
+        import rx.Observable;\r
+        import rx.subjects.BehaviorSubject;\r
 \r
 public class NetworkObservable {\r
   BroadcastReceiver mNetStateBroadcastReceiver = new BroadcastReceiver() {\r
-      public void onReceive(Context param1Context, Intent param1Intent) {\r
-        NetworkInfo networkInfo = ((ConnectivityManager)param1Context.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();\r
-        if (networkInfo != null && networkInfo.isAvailable()) {\r
-          StringBuilder stringBuilder = new StringBuilder();\r
-          stringBuilder.append("BroadcastReceiver---reConnection++  KeepAlive.isConnected=");\r
-          stringBuilder.append(KeepAlive.isConnected);\r
-          stringBuilder.append(",network_is_down=");\r
-          stringBuilder.append(NetworkObservable.this.network_is_down);\r
-          stringBuilder.append(",network_is_from_no_to_yes=");\r
-          stringBuilder.append(NetworkObservable.this.network_is_from_no_to_yes);\r
-          Logger.i(stringBuilder.toString());\r
-\r
-          // 如果 服务器socket没有连接,且 网络没有变化\r
-          if (!KeepAlive.isConnected && !NetworkObservable.this.network_is_from_no_to_yes) {\r
-\r
-            //如果网络关闭 则 检查执行下一个网络对象,此时没有转换网络状态\r
-            if (NetworkObservable.this.network_is_down) {\r
-              NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(3));\r
-//              NetworkObservable.access$002(NetworkObservable.this, false);\r
-              NetworkObservable.this.network_is_from_no_to_yes=false;\r
-            } else {\r
-\r
-              //如果网络已经开启,则设置网络状态从关闭到开启,并检查执行下一个网络对象\r
-              NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(2));\r
-//              NetworkObservable.access$002(NetworkObservable.this, true);\r
-              NetworkObservable.this.network_is_from_no_to_yes=true;\r
-            } \r
-          } else if (!KeepAlive.isConnected && NetworkObservable.this.network_is_from_no_to_yes) {\r
-\r
-            //如果网络转换已经成功,则只需检查执行下一个网络对象\r
-            NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(1));\r
-          } else if (KeepAlive.isConnected) {\r
-            //如果 网络服务器已经连接,则无需转换网络\r
-//            NetworkObservable.access$002(NetworkObservable.this, false);\r
-            NetworkObservable.this.network_is_from_no_to_yes=false;\r
+    public void onReceive(Context var1, Intent var2) {\r
+      NetworkInfo var3 = ((ConnectivityManager)var1.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();\r
+      if (var3 != null && var3.isAvailable()) {\r
+        StringBuilder var4 = new StringBuilder();\r
+        var4.append("BroadcastReceiver---reConnection++  KeepAlive.isConnected=");\r
+        var4.append(KeepAlive.isConnected);\r
+        var4.append(",network_is_down=");\r
+        var4.append(NetworkObservable.this.network_is_down);\r
+        var4.append(",network_is_from_no_to_yes=");\r
+        var4.append(NetworkObservable.this.network_is_from_no_to_yes);\r
+        Logger.i(var4.toString());\r
+        if (!KeepAlive.isConnected && !NetworkObservable.this.network_is_from_no_to_yes) {\r
+          if (NetworkObservable.this.network_is_down) {\r
+            NetworkObservable.this.objectPublishSubject.onNext(3);\r
+            NetworkObservable.this.network_is_down = false;\r
+          } else {\r
+            NetworkObservable.this.objectPublishSubject.onNext(2);\r
+            NetworkObservable.this.network_is_down = true;\r
           }\r
-\r
-          //所有检测都通过,就证明网络连接成功,network_is_down 自然就是false\r
-//          NetworkObservable.access$102(NetworkObservable.this, false);\r
-          NetworkObservable.this.network_is_down=false;\r
-\r
-        } else {\r
-          Logger.i("网络断开");\r
-//        NetworkObservable.access$102(NetworkObservable.this, true);\r
-          NetworkObservable.this.network_is_down = true;\r
-          NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(0));\r
+        } else if (NetworkObservable.this.network_is_from_no_to_yes) {\r
+          NetworkObservable.this.objectPublishSubject.onNext(1);\r
+        } else if (KeepAlive.isConnected) {\r
+          NetworkObservable.this.network_is_down = false;\r
         }\r
+\r
+        NetworkObservable.this.network_is_from_no_to_yes = false;\r
+      } else {\r
+        Logger.i("网络断开");\r
+        NetworkObservable.this.network_is_from_no_to_yes = true;\r
+        NetworkObservable.this.objectPublishSubject.onNext(0);\r
       }\r
-    };\r
-  \r
+\r
+    }\r
+  };\r
   private boolean network_is_down = false;\r
-  \r
   private boolean network_is_from_no_to_yes = true;\r
-  \r
   BehaviorSubject<Integer> objectPublishSubject = BehaviorSubject.create();\r
-  \r
-  public Observable<Integer> onChange() { return this.objectPublishSubject.distinctUntilChanged(); }\r
-  \r
-  public void register(Context paramContext) {\r
-    IntentFilter intentFilter = new IntentFilter();\r
-    intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");\r
-    paramContext.registerReceiver(this.mNetStateBroadcastReceiver, intentFilter);\r
+\r
+  public NetworkObservable() {\r
+  }\r
+\r
+  public Observable<Integer> onChange() {\r
+    return this.objectPublishSubject.distinctUntilChanged();\r
+  }\r
+\r
+  public void register(Context var1) {\r
+    IntentFilter var2 = new IntentFilter();\r
+    var2.addAction("android.net.conn.CONNECTIVITY_CHANGE");\r
+    var1.registerReceiver(this.mNetStateBroadcastReceiver, var2);\r
+  }\r
+\r
+  public void unregister(Context var1) {\r
+    var1.unregisterReceiver(this.mNetStateBroadcastReceiver);\r
   }\r
-  \r
-  public void unregister(Context paramContext) { paramContext.unregisterReceiver(this.mNetStateBroadcastReceiver); }\r
 }\r
 \r
index 2e4613b..6acc889 100644 (file)
@@ -13,11 +13,14 @@ import android.os.Handler;
 import android.os.PowerManager;\r
 import android.os.Vibrator;\r
 import android.support.v4.app.NotificationCompat;\r
+import android.view.Gravity;\r
 import android.view.MotionEvent;\r
 import android.view.View;\r
+import android.view.WindowManager;\r
 \r
 \r
 import com.enqualcomm.support.R;\r
+import com.enqualcomm.support.bean.NotificationParam;\r
 import com.ic.jni.ICJniUtils;\r
 import com.enqualcomm.support.bean.Contact;\r
 import com.enqualcomm.support.service.AudioService;\r
@@ -30,6 +33,8 @@ import rx.Subscriber;
 import rx.functions.Action1;\r
 import rx.schedulers.Schedulers;\r
 \r
+import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;\r
+import static android.media.RingtoneManager.TYPE_NOTIFICATION;\r
 import static android.os.PowerManager.ACQUIRE_CAUSES_WAKEUP;\r
 import static android.os.PowerManager.SCREEN_DIM_WAKE_LOCK;\r
 import static com.enqualcomm.support.Constants.ACTION_HEATR_RATE_START;\r
@@ -45,15 +50,15 @@ public class ProcessReceiver extends BroadcastReceiver {
   \r
   private static String last_message_name;\r
   \r
-//  private static CustomDialog mCustomDialog;\r
+  private static CustomDialog mCustomDialog;\r
   \r
   private AudioService mAudioService;\r
   \r
-//  private CustomNotification mCustomNotification;\r
-//\r
-//  private CustomDialog.Builder mDialog;\r
-//\r
-//  private CustomNotification.Builder mNotificationDialog;\r
+  private CustomNotification mCustomNotification;\r
+\r
+  private CustomDialog.Builder mDialog;\r
+\r
+  private CustomNotification.Builder mNotificationDialog;\r
   \r
   private NotificationManager mNotificationManager;\r
   \r
@@ -67,62 +72,69 @@ public class ProcessReceiver extends BroadcastReceiver {
   \r
   private float y2 = 0.0F;\r
   \r
-  private void initMyDialog(final Context context, final Contact contact, int paramInt) {\r
-    String str = contact.name;\r
-//    if (this.mDialog == null)\r
-//      this.mDialog = new CustomDialog.Builder(context);\r
-//    StringBuilder stringBuilder = new StringBuilder();\r
-//    stringBuilder.append("yls mCustomDialog");\r
-//    stringBuilder.append(mCustomDialog);\r
-//    Logger.i(stringBuilder.toString());\r
-//    if (mCustomDialog != null && mCustomDialog.isShowing() && last_message_name != null && str != null && last_message_name.equals(str) && last_app_id == paramInt)\r
-//      mCustomDialog.dismiss();\r
-//    last_message_name = str;\r
-//    last_app_id = paramInt;\r
-//    if (paramInt == 1) {\r
-//      CustomDialog.Builder builder = this.mDialog.setTitle(context.getString(2131624065));\r
-//      StringBuilder stringBuilder1 = new StringBuilder();\r
-//      stringBuilder1.append(context.getString(2131624074));\r
-//      stringBuilder1.append("  ");\r
-//      stringBuilder1.append(str);\r
-//      stringBuilder1.append(context.getString(2131624075));\r
-//      mCustomDialog = builder.setMessage(stringBuilder1.toString()).setPositiveButton("确定", new DialogInterface.OnClickListener() {\r
-//            public void onClick(DialogInterface param1DialogInterface, int param1Int) {\r
-//              param1DialogInterface.dismiss();\r
-//              componentName = new ComponentName("com.enqualcomm.imessage", "com.enqualcomm.imessage.ui.chat.ChatActivity_");\r
-//              Intent intent = new Intent("android.intent.action.MAIN");\r
-//              intent.putExtra("ACTIVITY_TYPE", 2);\r
-//              intent.putExtra("contact", contact);\r
-//              intent.addCategory("android.intent.category.DEFAULT");\r
-//              intent.addFlags(268435456);\r
-//              intent.setComponent(componentName);\r
-//              try {\r
-//                context.startActivity(intent);\r
-//                return;\r
-//              } catch (Exception componentName) {\r
-//                componentName.printStackTrace();\r
-//                return;\r
-//              }\r
-//            }\r
-//          }).setNegativeButton("取消", new DialogInterface.OnClickListener() {\r
-//            public void onClick(DialogInterface param1DialogInterface, int param1Int) { param1DialogInterface.dismiss(); }\r
-//          }).create();\r
-//      mCustomDialog.getWindow().setType(2005);\r
-//      mCustomDialog.show();\r
-//      return;\r
-//    }\r
-//    if (paramInt == 2) {\r
-//      CustomDialog.Builder builder = this.mDialog.setTitle(paramContext.getString(2131624028)).setApp(paramInt);\r
-//      stringBuilder = new StringBuilder();\r
-//      stringBuilder.append(paramContext.getString(2131624027));\r
-//      stringBuilder.append(str);\r
-//      stringBuilder.append(paramContext.getString(2131624026));\r
-//      mCustomDialog = builder.setMessage(stringBuilder.toString()).setPositiveButton("确定", new DialogInterface.OnClickListener() {\r
-//            public void onClick(DialogInterface param1DialogInterface, int param1Int) { param1DialogInterface.dismiss(); }\r
-//          }).create();\r
-//      mCustomDialog.getWindow().setType(2005);\r
-//      mCustomDialog.show();\r
-//    }\r
+  private void initMyDialog(final Context context, final Contact contact, int app_id) {\r
+    String var4 = contact.name;\r
+    if (this.mDialog == null) {\r
+      this.mDialog = new CustomDialog.Builder(context);\r
+    }\r
+\r
+    StringBuilder var5 = new StringBuilder();\r
+    var5.append("===mCustomDialog");\r
+    var5.append(mCustomDialog);\r
+    Logger.i(var5.toString());\r
+    if (mCustomDialog != null && mCustomDialog.isShowing() && last_message_name != null && var4 != null && last_message_name.equals(var4) && last_app_id == app_id) {\r
+      mCustomDialog.dismiss();\r
+    }\r
+\r
+    last_message_name = var4;\r
+    last_app_id = app_id;\r
+    CustomDialog.Builder tmpDialog;\r
+    if (app_id == 1) {\r
+      tmpDialog = this.mDialog.setTitle(context.getString(R.string.setting_title));\r
+      StringBuilder var6 = new StringBuilder();\r
+      var6.append(context.getString(R.string.voiceMessage));\r
+      var6.append("  ");\r
+      var6.append(var4);\r
+      var6.append(context.getString(R.string.voiceMessageEnd));\r
+      mCustomDialog = tmpDialog.setMessage(var6.toString()).setPositiveButton("确定", new DialogInterface.OnClickListener() {\r
+        public void onClick(DialogInterface var1x, int var2x) {\r
+          var1x.dismiss();\r
+          ComponentName var3 = new ComponentName("com.enqualcomm.imessage", "com.enqualcomm.imessage.ui.chat.ChatActivity_");\r
+          Intent var5 = new Intent("android.intent.action.MAIN");\r
+          var5.putExtra("ACTIVITY_TYPE", 2);\r
+          var5.putExtra("contact", contact);\r
+          var5.addCategory("android.intent.category.DEFAULT");\r
+          var5.addFlags(FLAG_ACTIVITY_NEW_TASK);\r
+          var5.setComponent(var3);\r
+\r
+          try {\r
+            context.startActivity(var5);\r
+          } catch (Exception var4) {\r
+            var4.printStackTrace();\r
+          }\r
+\r
+        }\r
+      }).setNegativeButton("取消", new DialogInterface.OnClickListener() {\r
+        public void onClick(DialogInterface var1, int var2) {\r
+          var1.dismiss();\r
+        }\r
+      }).create();\r
+      mCustomDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_TOAST);\r
+      mCustomDialog.show();\r
+    } else if (app_id == 2) {\r
+      tmpDialog = this.mDialog.setTitle(context.getString(R.string.hht_misscall_call)).setApp(app_id);\r
+      StringBuilder var7 = new StringBuilder();\r
+      var7.append(context.getString(R.string.hht_call_start));\r
+      var7.append(var4);\r
+      var7.append(context.getString(R.string.hht_call_end));\r
+      mCustomDialog = tmpDialog.setMessage(var7.toString()).setPositiveButton("确定", new DialogInterface.OnClickListener() {\r
+        public void onClick(DialogInterface var1, int var2) {\r
+          var1.dismiss();\r
+        }\r
+      }).create();\r
+      mCustomDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_TOAST);\r
+      mCustomDialog.show();\r
+    }\r
   }\r
   \r
   private void playNotificationVoice(Context paramContext) {\r
@@ -132,199 +144,270 @@ public class ProcessReceiver extends BroadcastReceiver {
   }\r
   \r
   private void screenOn(Context paramContext) {\r
-    final PowerManager.WakeLock wakelock = ((PowerManager)paramContext.getSystemService(Context.POWER_SERVICE)).newWakeLock(ACQUIRE_CAUSES_WAKEUP| SCREEN_DIM_WAKE_LOCK, "target");\r
+    final PowerManager.WakeLock wakelock = ((PowerManager)paramContext.getSystemService(Context.POWER_SERVICE)).newWakeLock(ACQUIRE_CAUSES_WAKEUP| SCREEN_DIM_WAKE_LOCK, ProcessReceiver.class.getSimpleName());\r
     wakelock.acquire();\r
     Observable.timer(5000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
           public void call(Long param1Long) { wakelock.release(); }\r
         });\r
   }\r
   \r
-  public void initCustomNotification(final Context context, final Contact contact, final String content_msg, int paramInt) {\r
-//    String str = paramContact.name;\r
-//    if (this.mNotificationDialog == null)\r
-//      this.mNotificationDialog = new CustomNotification.Builder(paramContext);\r
-//    if (this.mCustomNotification != null && this.mCustomNotification.isShowing() && last_message_name != null && str != null && last_message_name.equals(str) && paramInt == last_app_id)\r
+  public void initCustomNotification(final Context var1, final Contact var2, final String var3, int var4) {\r
+//    String var5 = var2.name;\r
+//    if (this.mNotificationDialog == null) {\r
+//      this.mNotificationDialog = new com.enqualcomm.support.utils.CustomNotification.Builder(var1);\r
+//    }\r
+//\r
+//    if (this.mCustomNotification != null && this.mCustomNotification.isShowing() && last_message_name != null && var5 != null && last_message_name.equals(var5) && var4 == last_app_id) {\r
 //      this.mCustomNotification.dismiss();\r
-//    last_message_name = str;\r
-//    last_app_id = paramInt;\r
-//    final Handler mHandle = new Handler();\r
-//    if (paramContact.category == 4) {\r
-//      str = paramContact.extra;\r
+//    }\r
+//\r
+//    last_message_name = var5;\r
+//    last_app_id = var4;\r
+//    final Handler var6 = new Handler();\r
+//    if (var2.category == 4) {\r
+//      var5 = var2.extra;\r
 //    } else {\r
-//      str = paramContact.number;\r
+//      var5 = var2.number;\r
 //    }\r
-//    Observable.create(new HandleWechatNotice(paramInt, str, 1, paramContext)).subscribeOn(Schedulers.io()).subscribe(new Subscriber<NotificationParam>() {\r
-//          public void onCompleted() {}\r
 //\r
-//          public void onError(Throwable param1Throwable) {}\r
+//    Observable.create(new HandleWechatNotice(var4, var5, 1, var1)).subscribeOn(Schedulers.io()).subscribe(new Subscriber<NotificationParam>() {\r
+//      public void onCompleted() {\r
+//      }\r
 //\r
-//          public void onNext(NotificationParam param1NotificationParam) {\r
-//            final int msgCount = param1NotificationParam.noReadmsgCount;\r
-//            StringBuilder stringBuilder = new StringBuilder();\r
-//            stringBuilder.append("msgCount=");\r
-//            stringBuilder.append(i);\r
-//            Logger.i(stringBuilder.toString());\r
-//            switch (param1NotificationParam.category) {\r
-//              default:\r
-//                return;\r
-//              case 2:\r
-//                mHandle.post(new Runnable() {\r
-//                      public void run() {\r
-//                        String str;\r
-//                        if (content_msg != null) {\r
-//                          str = content_msg;\r
-//                        } else {\r
-//                          StringBuilder stringBuilder1 = new StringBuilder();\r
-//                          stringBuilder1.append(Integer.toString(msgCount));\r
-//                          stringBuilder1.append(context.getString(2131624053));\r
-//                          str = stringBuilder1.toString();\r
-//                        }\r
-//                        StringBuilder stringBuilder = new StringBuilder();\r
-//                        stringBuilder.append("setContent=");\r
-//                        stringBuilder.append(str);\r
-//                        Logger.i(stringBuilder.toString());\r
-//                        ProcessReceiver.access$002(ProcessReceiver.null.this.this$0, ProcessReceiver.null.this.this$0.mNotificationDialog.setTitle(2131165268, 2131624051, 0).setMessage(this.this$1.val$contact.name, 0).setContentMessage(str).setLayoutViewClick(new View.OnTouchListener() {\r
-//                                public boolean onTouch(View param3View, MotionEvent param3MotionEvent) {\r
-//                                  switch (param3MotionEvent.getAction()) {\r
-//                                    default:\r
-//                                      return true;\r
-//                                    case 1:\r
-//                                      ProcessReceiver.access$302(ProcessReceiver.null.this.this$0, param3MotionEvent.getX());\r
-//                                      ProcessReceiver.access$402(ProcessReceiver.null.this.this$0, param3MotionEvent.getY());\r
-//                                      if (ProcessReceiver.null.this.this$0.y1 - ProcessReceiver.null.this.this$0.y2 > 50.0F) {\r
-//                                        ProcessReceiver.null.this.this$0.mCustomNotification.dismiss();\r
-//                                      } else {\r
-//                                        Logger.i("action up to do ");\r
-//                                        ProcessReceiver.null.this.this$0.mCustomNotification.dismiss();\r
-//                                        try {\r
-//                                          String str;\r
-//                                          if (this.this$2.this$1.val$contact.category == 4) {\r
-//                                            str = this.this$2.this$1.val$contact.extra;\r
-//                                          } else {\r
-//                                            str = this.this$2.this$1.val$contact.number;\r
-//                                          }\r
-//                                          Observable.create(new HandleWechatNotice(2, str, 3, context)).subscribeOn(Schedulers.io()).subscribe(new Subscriber<NotificationParam>() {\r
-//                                                public void onCompleted() {}\r
+//      public void onError(Throwable var1x) {\r
+//      }\r
+//\r
+//      public void onNext(NotificationParam var1x) {\r
+//        final int var2x = var1x.noReadmsgCount;\r
+//        StringBuilder var3x = new StringBuilder();\r
+//        var3x.append("msgCount=");\r
+//        var3x.append(var2x);\r
+//        Logger.i(var3x.toString());\r
+//        switch(var1x.category) {\r
+//          case 1:\r
+//            var6.post(new Runnable() {\r
+//              public void run() {\r
+//                String var1x;\r
+//                if (var3 != null) {\r
+//                  var1x = var3;\r
+//                } else {\r
+//                  var1x = var1.getString(2131624056);\r
+//                }\r
 //\r
-//                                                public void onError(Throwable param4Throwable) {}\r
+//                StringBuilder var2xx = new StringBuilder();\r
+//                var2xx.append("setContent=");\r
+//                var2xx.append(var1x);\r
+//                Logger.i(var2xx.toString());\r
+//                ProcessReceiver.this.mCustomNotification = ProcessReceiver.this.mNotificationDialog.setTitle(2131165274, 2131624055, 0).setMessage(var2.name, var2x).setContentMessage(var1x).setLayoutViewClick(new View.OnTouchListener() {\r
+//                  public boolean onTouch(View var1x, MotionEvent var2xx) {\r
+//                    switch(var2xx.getAction()) {\r
+//                      case 0:\r
+//                        ProcessReceiver.this.x1 = var2xx.getX();\r
+//                        ProcessReceiver.this.y1 = var2xx.getY();\r
+//                        break;\r
+//                      case 1:\r
+//                        ProcessReceiver.this.x2 = var2xx.getX();\r
+//                        ProcessReceiver.this.y2 = var2xx.getY();\r
+//                        if (ProcessReceiver.this.y1 - ProcessReceiver.this.y2 > 50.0F) {\r
+//                          ProcessReceiver.this.mCustomNotification.dismiss();\r
+//                        } else {\r
+//                          Logger.i("action up to do ");\r
+//                          ProcessReceiver.this.mCustomNotification.dismiss();\r
+//                          ComponentName var8 = new ComponentName("com.enqualcomm.imessage", "com.enqualcomm.imessage.ui.chat.ChatActivity_");\r
+//                          Intent var6x = new Intent("android.intent.action.MAIN");\r
+//                          var6x.putExtra("ACTIVITY_TYPE", 2);\r
+//                          var6x.putExtra("contact", var2);\r
+//                          var6x.addCategory("android.intent.category.DEFAULT");\r
+//                          var6x.addFlags(268435456);\r
+//                          var6x.setComponent(var8);\r
 //\r
-//                                                public void onNext(NotificationParam param4NotificationParam) {}\r
-//                                              });\r
-//                                        } catch (Exception param3View) {\r
-//                                          param3View.printStackTrace();\r
-//                                        }\r
-//                                      }\r
-//                                    case 0:\r
-//                                      break;\r
-//                                  }\r
-//                                  ProcessReceiver.access$102(ProcessReceiver.null.this.this$0, param3MotionEvent.getX());\r
-//                                  ProcessReceiver.access$202(ProcessReceiver.null.this.this$0, param3MotionEvent.getY());\r
+//                          Exception var10000;\r
+//                          label47: {\r
+//                            String var7;\r
+//                            boolean var10001;\r
+//                            label36: {\r
+//                              try {\r
+//                                var1.startActivity(var6x);\r
+//                                if (var2.category == 4) {\r
+//                                  var7 = var2.extra;\r
+//                                  break label36;\r
 //                                }\r
-//                              }).create());\r
-//                        ProcessReceiver.null.this.this$0.mCustomNotification.getWindow().setGravity(48);\r
-//                        ProcessReceiver.null.this.this$0.mCustomNotification.getWindow().setType(2008);\r
-//                        ProcessReceiver.null.this.this$0.mCustomNotification.show();\r
-//                        (new Handler()).postDelayed(new Runnable() {\r
-//                              public void run() {\r
-//                                if (ProcessReceiver.null.this.this$0.mCustomNotification != null && ProcessReceiver.null.this.this$0.mCustomNotification.isShowing())\r
-//                                  ProcessReceiver.null.this.this$0.mCustomNotification.dismiss();\r
+//                              } catch (Exception var5) {\r
+//                                var10000 = var5;\r
+//                                var10001 = false;\r
+//                                break label47;\r
+//                              }\r
+//\r
+//                              try {\r
+//                                var7 = var2.number;\r
+//                              } catch (Exception var4) {\r
+//                                var10000 = var4;\r
+//                                var10001 = false;\r
+//                                break label47;\r
 //                              }\r
-//                            },  5000L);\r
-//                      }\r
-//                    });\r
-//                return;\r
-//              case 1:\r
-//                break;\r
-//            }\r
-//            mHandle.post(new Runnable() {\r
+//                            }\r
+//\r
+//                            try {\r
+//                              HandleWechatNotice var10 = new HandleWechatNotice(1, var7, 3, var1);\r
+//                              Observable var11 = Observable.create(var10).subscribeOn(Schedulers.io());\r
+//                              Subscriber var12 = new Subscriber<NotificationParam>() {\r
+//                                public void onCompleted() {\r
+//                                }\r
+//\r
+//                                public void onError(Throwable var1x) {\r
+//                                }\r
+//\r
+//                                public void onNext(NotificationParam var1x) {\r
+//                                }\r
+//                              };\r
+//                              var11.subscribe(var12);\r
+//                              return true;\r
+//                            } catch (Exception var3x) {\r
+//                              var10000 = var3x;\r
+//                              var10001 = false;\r
+//                            }\r
+//                          }\r
+//\r
+//                          Exception var9 = var10000;\r
+//                          var9.printStackTrace();\r
+//                        }\r
+//                    }\r
+//\r
+//                    return true;\r
+//                  }\r
+//                }).create();\r
+//                ProcessReceiver.this.mCustomNotification.getWindow().setGravity(Gravity.TOP);\r
+//                ProcessReceiver.this.mCustomNotification.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG);\r
+//                ProcessReceiver.this.mCustomNotification.show();\r
+//                (new Handler()).postDelayed(new Runnable() {\r
 //                  public void run() {\r
-//                    String str;\r
-//                    if (content_msg != null) {\r
-//                      str = content_msg;\r
-//                    } else {\r
-//                      str = context.getString(2131624056);\r
+//                    if (ProcessReceiver.this.mCustomNotification != null && ProcessReceiver.this.mCustomNotification.isShowing()) {\r
+//                      ProcessReceiver.this.mCustomNotification.dismiss();\r
 //                    }\r
-//                    StringBuilder stringBuilder = new StringBuilder();\r
-//                    stringBuilder.append("setContent=");\r
-//                    stringBuilder.append(str);\r
-//                    Logger.i(stringBuilder.toString());\r
-//                    ProcessReceiver.access$002(ProcessReceiver.null.this.this$0, ProcessReceiver.null.this.this$0.mNotificationDialog.setTitle(2131165274, 2131624055, 0).setMessage(this.this$1.val$contact.name, msgCount).setContentMessage(str).setLayoutViewClick(new View.OnTouchListener() {\r
-//                            public boolean onTouch(View param3View, MotionEvent param3MotionEvent) {\r
-//                              Intent intent;\r
-//                              switch (param3MotionEvent.getAction()) {\r
-//                                default:\r
-//                                  return true;\r
-//                                case 1:\r
-//                                  ProcessReceiver.access$302(ProcessReceiver.null.this.this$0, param3MotionEvent.getX());\r
-//                                  ProcessReceiver.access$402(ProcessReceiver.null.this.this$0, param3MotionEvent.getY());\r
-//                                  if (ProcessReceiver.null.this.this$0.y1 - ProcessReceiver.null.this.this$0.y2 > 50.0F) {\r
-//                                    ProcessReceiver.null.this.this$0.mCustomNotification.dismiss();\r
-//                                    return true;\r
-//                                  }\r
-//                                  Logger.i("action up to do ");\r
-//                                  ProcessReceiver.null.this.this$0.mCustomNotification.dismiss();\r
-//                                  componentName = new ComponentName("com.enqualcomm.imessage", "com.enqualcomm.imessage.ui.chat.ChatActivity_");\r
-//                                  intent = new Intent("android.intent.action.MAIN");\r
-//                                  intent.putExtra("ACTIVITY_TYPE", 2);\r
-//                                  intent.putExtra("contact", contact);\r
-//                                  intent.addCategory("android.intent.category.DEFAULT");\r
-//                                  intent.addFlags(268435456);\r
-//                                  intent.setComponent(componentName);\r
-//                                  try {\r
-//                                    String str;\r
-//                                    context.startActivity(intent);\r
-//                                    if (this.this$2.this$1.val$contact.category == 4) {\r
-//                                      str = this.this$2.this$1.val$contact.extra;\r
-//                                    } else {\r
-//                                      str = this.this$2.this$1.val$contact.number;\r
-//                                    }\r
-//                                    Observable.create(new HandleWechatNotice(1, str, 3, context)).subscribeOn(Schedulers.io()).subscribe(new Subscriber<NotificationParam>() {\r
-//                                          public void onCompleted() {}\r
 //\r
-//                                          public void onError(Throwable param4Throwable) {}\r
+//                  }\r
+//                }, 5000L);\r
+//              }\r
+//            });\r
+//            break;\r
+//          case 2:\r
+//            var6.post(new Runnable() {\r
+//              public void run() {\r
+//                String var1x;\r
+//                if (var3 != null) {\r
+//                  var1x = var3;\r
+//                } else {\r
+//                  StringBuilder var3x = new StringBuilder();\r
+//                  var3x.append(Integer.toString(var2x));\r
+//                  var3x.append(var1.getString(2131624053));\r
+//                  var1x = var3x.toString();\r
+//                }\r
+//\r
+//                StringBuilder var2xx = new StringBuilder();\r
+//                var2xx.append("setContent=");\r
+//                var2xx.append(var1x);\r
+//                Logger.i(var2xx.toString());\r
+//                ProcessReceiver.this.mCustomNotification = ProcessReceiver.this.mNotificationDialog.setTitle(2131165268, 2131624051, 0).setMessage(var2.name, 0).setContentMessage(var1x).setLayoutViewClick(new View.OnTouchListener() {\r
+//                  public boolean onTouch(View var1x, MotionEvent var2xx) {\r
+//                    switch(var2xx.getAction()) {\r
+//                      case 0:\r
+//                        ProcessReceiver.this.x1 = var2xx.getX();\r
+//                        ProcessReceiver.this.y1 = var2xx.getY();\r
+//                        break;\r
+//                      case 1:\r
+//                        ProcessReceiver.this.x2 = var2xx.getX();\r
+//                        ProcessReceiver.this.y2 = var2xx.getY();\r
+//                        if (ProcessReceiver.this.y1 - ProcessReceiver.this.y2 > 50.0F) {\r
+//                          ProcessReceiver.this.mCustomNotification.dismiss();\r
+//                        } else {\r
+//                          Logger.i("action up to do ");\r
+//                          ProcessReceiver.this.mCustomNotification.dismiss();\r
+//\r
+//                          Exception var10000;\r
+//                          label47: {\r
+//                            boolean var10001;\r
+//                            String var6x;\r
+//                            label36: {\r
+//                              try {\r
+//                                if (var2.category == 4) {\r
+//                                  var6x = var2.extra;\r
+//                                  break label36;\r
+//                                }\r
+//                              } catch (Exception var5) {\r
+//                                var10000 = var5;\r
+//                                var10001 = false;\r
+//                                break label47;\r
+//                              }\r
 //\r
-//                                          public void onNext(NotificationParam param4NotificationParam) {}\r
-//                                        });\r
-//                                    return true;\r
-//                                  } catch (Exception componentName) {\r
-//                                    componentName.printStackTrace();\r
-//                                    return true;\r
-//                                  }\r
-//                                case 0:\r
-//                                  break;\r
+//                              try {\r
+//                                var6x = var2.number;\r
+//                              } catch (Exception var4) {\r
+//                                var10000 = var4;\r
+//                                var10001 = false;\r
+//                                break label47;\r
 //                              }\r
-//                              ProcessReceiver.access$102(ProcessReceiver.null.this.this$0, intent.getX());\r
-//                              ProcessReceiver.access$202(ProcessReceiver.null.this.this$0, intent.getY());\r
+//                            }\r
+//\r
+//                            try {\r
+//                              HandleWechatNotice var8 = new HandleWechatNotice(2, var6x, 3, var1);\r
+//                              Observable var9 = Observable.create(var8).subscribeOn(Schedulers.io());\r
+//                              Subscriber var10 = new Subscriber<NotificationParam>() {\r
+//                                public void onCompleted() {\r
+//                                }\r
+//\r
+//                                public void onError(Throwable var1x) {\r
+//                                }\r
+//\r
+//                                public void onNext(NotificationParam var1x) {\r
+//                                }\r
+//                              };\r
+//                              var9.subscribe(var10);\r
 //                              return true;\r
+//                            } catch (Exception var3x) {\r
+//                              var10000 = var3x;\r
+//                              var10001 = false;\r
 //                            }\r
-//                          }).create());\r
-//                    ProcessReceiver.null.this.this$0.mCustomNotification.getWindow().setGravity(48);\r
-//                    ProcessReceiver.null.this.this$0.mCustomNotification.getWindow().setType(2008);\r
-//                    ProcessReceiver.null.this.this$0.mCustomNotification.show();\r
-//                    (new Handler()).postDelayed(new Runnable() {\r
-//                          public void run() {\r
-//                            if (ProcessReceiver.null.this.this$0.mCustomNotification != null && ProcessReceiver.null.this.this$0.mCustomNotification.isShowing())\r
-//                              ProcessReceiver.null.this.this$0.mCustomNotification.dismiss();\r
 //                          }\r
-//                        },  5000L);\r
+//\r
+//                          Exception var7 = var10000;\r
+//                          var7.printStackTrace();\r
+//                        }\r
+//                    }\r
+//\r
+//                    return true;\r
 //                  }\r
-//                });\r
-//          }\r
-//        });\r
+//                }).create();\r
+//                ProcessReceiver.this.mCustomNotification.getWindow().setGravity(Gravity.TOP);\r
+//                ProcessReceiver.this.mCustomNotification.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG);\r
+//                ProcessReceiver.this.mCustomNotification.show();\r
+//                (new Handler()).postDelayed(new Runnable() {\r
+//                  public void run() {\r
+//                    if (ProcessReceiver.this.mCustomNotification != null && ProcessReceiver.this.mCustomNotification.isShowing()) {\r
+//                      ProcessReceiver.this.mCustomNotification.dismiss();\r
+//                    }\r
+//\r
+//                  }\r
+//                }, 5000L);\r
+//              }\r
+//            });\r
+//        }\r
+//\r
+//      }\r
+//    });\r
   }\r
   \r
-  public void initNotification(Contact paramContact, Context paramContext) {\r
-    String str = paramContact.name;\r
-    Uri uri = RingtoneManager.getDefaultUri(2);\r
-    NotificationCompat.Builder builder = (new NotificationCompat.Builder(paramContext)).setSmallIcon(R.drawable.toast_error).setContentTitle(paramContext.getString(R.string.app_name)).setWhen(System.currentTimeMillis()).setAutoCancel(true);\r
-    StringBuilder stringBuilder = new StringBuilder();\r
-    stringBuilder.append(paramContext.getString(R.string.app_name));\r
-    stringBuilder.append("  ");\r
-    stringBuilder.append(str);\r
-    stringBuilder.append(paramContext.getString(R.string.app_name));\r
-    Notification notification = builder.setContentText(stringBuilder.toString()).setTicker(paramContext.getString(R.string.app_name)).setSound(uri).build();\r
-    this.mNotificationManager = (NotificationManager)paramContext.getSystemService(Context.NOTIFICATION_SERVICE);\r
-    this.mNotificationManager.notify(1, notification);\r
+  public void initNotification(Contact paramContact, Context var2) {\r
+//    String var3 = paramContact.name;\r
+//    Uri var6 = RingtoneManager.getDefaultUri(TYPE_NOTIFICATION);\r
+//    android.support.v4.app.NotificationCompat.Builder var4 = (new android.support.v7.app.NotificationCompat.Builder(var2)).setSmallIcon(R.drawable.microphone).setContentTitle(var2.getString(R.string.setting_title)).setWhen(System.currentTimeMillis()).setAutoCancel(true);\r
+//    StringBuilder var5 = new StringBuilder();\r
+//    var5.append(var2.getString(R.string.voiceMessage));\r
+//    var5.append("  ");\r
+//    var5.append(var3);\r
+//    var5.append(var2.getString(R.string.voiceMessageEnd));\r
+//    Notification var7 = var4.setContentText(var5.toString()).setTicker(var2.getString(R.string.ticker)).setSound(var6).build();\r
+//    this.mNotificationManager = (NotificationManager)var2.getSystemService(Context.NOTIFICATION_SERVICE);\r
+//    this.mNotificationManager.notify(1, var7);\r
   }\r
 \r
 \r
@@ -352,12 +435,59 @@ public class ProcessReceiver extends BroadcastReceiver {
       }\r
     } else {\r
       String str1;\r
-      if (ACTION_REMOTE_CAMERA.equals(paramIntent.getAction())) {\r
+      if (ACTION_REMOTE_CAMERA.equals(str)) {\r
         str1 = paramIntent.getStringExtra("key_remote_number");\r
         (new CameraUtil(paramContext)).getPictur(str1);\r
         return;\r
       }\r
     }\r
+\r
+\r
+\r
+      boolean var5;\r
+      if ("com.enqualcomm.support.DIALOG".equals(str)) {\r
+        Contact var6 = (Contact)paramIntent.getParcelableExtra("contact");\r
+        SharPreferenceUtil.getPrefBoolean(paramContext, "key_is_resume", false);\r
+        var5 = SharPreferenceUtil.getPrefBoolean(paramContext, "KEY_ISSILENCE", false);\r
+        if (var6 != null && !var5) {\r
+          if (!DeviceInfoUtil.isTopActivity(paramContext)) {\r
+            this.initMyDialog(paramContext, var6, 1);\r
+            this.playNotificationVoice(paramContext);\r
+          }\r
+\r
+          this.screenOn(paramContext);\r
+        }\r
+      } else if ("com.enqualcomm.imessage.SOS_ACTION".equals(str)) {\r
+        if (paramIntent.getIntExtra("sos_end", 0) == 0) {\r
+//          EqcAlgorithmNative.native_EqcAlgorithmMethod3(8);\r
+          this.sendStheartRateBroadcast(paramContext, "com.eqc.heartrate.action.SILENT_START", 3);\r
+          //trigger AP10 报警定位\r
+        }\r
+      } else if ("com.enqualcomm.support.ACTION_REMOTE_CAMERA".equals(paramIntent.getAction())) {\r
+        String var7 = paramIntent.getStringExtra("key_remote_number");\r
+        (new CameraUtil(paramContext)).getPictur(var7);\r
+      } else if (!"com.enqualcomm.support.CloseUnreadMsg".equals(paramIntent.getAction()) && !"android.intent.action.BATTERY_LOW".equals(paramIntent.getAction())) {\r
+        if ("com.enqualcomm.support.ACTION_MISSED_CALL_GET".equals(str)) {\r
+          Contact var8 = (Contact)paramIntent.getParcelableExtra("contact");\r
+          var8.extra = paramIntent.getStringExtra("date");\r
+          var5 = SharPreferenceUtil.getPrefBoolean(paramContext, "KEY_ISSILENCE", false);\r
+          if (var8 != null && !var5) {\r
+            this.initMyDialog(paramContext, var8, 2);\r
+            this.playNotificationVoice(paramContext);\r
+            this.screenOn(paramContext);\r
+          }\r
+        }\r
+      } else {\r
+        if (mCustomDialog != null && mCustomDialog.isShowing()) {\r
+          mCustomDialog.dismiss();\r
+        }\r
+\r
+        if (this.mCustomNotification != null && this.mCustomNotification.isShowing()) {\r
+          this.mCustomNotification.dismiss();\r
+        }\r
+      }\r
+\r
+\r
   }\r
   \r
   public void sendStheartRateBroadcast(Context paramContext, String actionStr, int paramInt) {\r
index ab675e9..061b219 100644 (file)
@@ -9,26 +9,7 @@ import com.enqualcomm.support.service.Deliver;
 import java.util.concurrent.LinkedBlockingDeque;\r
 \r
 public class ServiceUtil {\r
-  public static boolean hasSave(StringMessage paramStringMessage) {\r
-    String str = paramStringMessage.cmd();\r
-    if (str.length() > 8) {\r
-      str = str.substring(0, 8);\r
-      if ("#@H03@#;".equals(str))\r
-        return true; \r
-      if ("#@H02@#;".equals(str))\r
-        return true; \r
-      if ("#@H14@#;".equals(str))\r
-        return true; \r
-      if ("#@H03C@#;".equals(str))\r
-        return true; \r
-      if ("#@H02C@#;".equals(str))\r
-        return true; \r
-      if ("#@H14C@#;".equals(str))\r
-        return true; \r
-    } \r
-    return false;\r
-  }\r
-  \r
+\r
   public static void offerQueue(StringMessage paramStringMessage) {\r
     offerQueue(paramStringMessage, false);\r
   }\r
index 51e96c2..8d311ad 100644 (file)
@@ -1,4 +1,113 @@
 <resources>
     <string name="app_name">ICProtocolServer</string>
     <string name="program_abnormal">Sorry, the program is abnormal and will quit!</string>
+    <string name="app_died_str">很抱歉,程序出现异常,即将退出</string>
+
+    <string name="app_label_hasnot_been_installed">"%1$s hasn't been installed"</string>
+
+    <string name="cancel">取消</string>
+
+    <string name="cloudpush_app_name">Push Service</string>
+
+    <string name="family_group">家庭群组</string>
+
+    <string name="hht_call_end">的未接来电</string>
+
+    <string name="hht_call_start">您有</string>
+
+    <string name="hht_misscall_call">来电提醒</string>
+
+    <string name="hwpush_ability_value">successRateAnalytics</string>
+
+    <string name="hwpush_cancel">Cancel</string>
+
+    <string name="hwpush_collect">Favorite</string>
+
+    <string name="hwpush_collect_tip">A Favorites icon will be created on the home screen. You can touch the icon to view all your favorite notifications.</string>
+
+    <string name="hwpush_collect_tip_known">OK</string>
+
+    <string name="hwpush_delete">Delete</string>
+
+    <string name="hwpush_deltitle">Delete notifications</string>
+
+    <string name="hwpush_dialog_limit_message">A maximum of 1000 favorite notifications can be saved. Delete some notifications before you can add new ones. Go to your favorite notifications list?</string>
+
+    <string name="hwpush_dialog_limit_ok">Go</string>
+
+    <string name="hwpush_dialog_limit_title">Note</string>
+
+    <string name="hwpush_forward">Forward</string>
+
+    <string name="hwpush_goback">Back</string>
+
+    <string name="hwpush_loading_title">Loading... Please wait.</string>
+
+    <string name="hwpush_msg_collect">Favorites</string>
+
+    <string name="hwpush_msg_favorites">Favorite notifications</string>
+
+    <string name="hwpush_no_collection">No favorite notifications</string>
+
+    <string name="hwpush_refresh">Refresh</string>
+
+    <string name="hwpush_request_provider_permission">Store messages</string>
+
+    <string name="hwpush_richmedia">Rich media</string>
+
+    <string name="hwpush_selectall">Select all</string>
+
+    <string name="hwpush_unselectall">Deselect all</string>
+
+    <string name="no_name">未命名</string>
+
+    <string name="notification_call">电话</string>
+
+    <string name="notification_current">现在</string>
+
+    <string name="notification_missed_call">个未接电话</string>
+
+    <string name="notification_time_unit">分钟前</string>
+
+    <string name="notification_wechat">微聊</string>
+
+    <string name="notification_wechat_content">发来新消息</string>
+
+    <string name="notification_wechat_emoj">[表情]</string>
+
+    <string name="notification_wechat_pic">[图片]</string>
+
+    <string name="notification_wechat_video">[视频]</string>
+
+    <string name="notification_wechat_voice">[语音]</string>
+
+    <string name="ok">确定</string>
+
+    <string name="please_buy">您暂未激活该功能哦,快去APP上激活吧~</string>
+
+    <string name="ringtone_spring_ding_dong">spring_ding_dong.mp3</string>
+
+    <string name="search_menu_title">Search</string>
+
+    <string name="setting_title">微聊消息</string>
+
+    <string name="start_video_call">正在发起视频通话...</string>
+
+    <string name="statistics">statistics</string>
+
+    <string name="status_bar_notification_info_overflow">999+</string>
+
+    <string name="ticker">\"微聊消息:\" + \"您有新微聊消息,请注意查收!\"</string>
+
+    <string name="title_alert">dialog主题</string>
+
+    <string name="video_disconnect">The call has been disconnected because the watch is overheated</string>
+
+    <string name="video_disconnect2">Dear, to protect your eyes, the call will be disconnected</string>
+
+    <string name="video_display_name">宝贝</string>
+
+    <string name="voiceMessage">来自 :</string>
+
+    <string name="voiceMessageEnd">的微聊消息</string>
 </resources>
index cfa7e8f..4d1c78e 100644 (file)
 
     </style>
 
+    <style parent="@android:style/Theme.Dialog" name="Dialog">
+
+    <item name="android:windowBackground">@android:color/transparent</item>
+
+    <item name="android:windowNoTitle">true</item>
+
+    <item name="android:windowIsFloating">true</item>
+
+    <item name="android:background">#00000000</item>
+
+</style>
+
+    <style name="text_16_666666">
+
+    <item name="android:textSize">16.0dip</item>
+
+    <item name="android:textColor">#ff666666</item>
+
+</style>
+    <style name="text_18_ffffff">
+
+    <item name="android:textSize">18.0dip</item>
+
+    <item name="android:textColor">#ff0b5796</item>
+
+</style>
+    <style name="sdw_white">
+
+    <item name="android:shadowColor">#7fffffff</item>
+
+    <item name="android:shadowDx">0.0</item>
+
+    <item name="android:shadowDy">0.65</item>
+
+    <item name="android:shadowRadius">1.0</item>
+
+</style>
+    <style parent="@style/sdw_white" name="text_15_666666_sdw">
+
+    <item name="android:textSize">15.0dip</item>
+
+    <item name="android:textColor">#ff666666</item>
+
+</style>
+
+    <style name="sdw_79351b">
+
+    <item name="android:shadowColor">#ff79351b</item>
+
+    <item name="android:shadowDx">0.0</item>
+
+    <item name="android:shadowDy">1.0</item>
+
+    <item name="android:shadowRadius">1.0</item>
+
+</style>
+
+
+
+    <style parent="@style/sdw_79351b" name="text_15_ffffff_sdw">
+
+    <item name="android:textSize">15.0dip</item>
+
+    <item name="android:textColor">#ffffffff</item>
+
+</style>
+
+
+
+    <style name="text_16_999b97">
+
+    <item name="android:textSize">16.0dip</item>
+
+    <item name="android:textColor">#ff999b97</item>
+
+</style>
+
+
 </resources>