From: TrillGates Date: Tue, 29 Jun 2021 02:14:26 +0000 (+0800) Subject: fixed copy ic as s123 cause bugs. X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=a9f3dc84f4ec84a33e2a191792d28f6da22ee034;p=icsupport.git fixed copy ic as s123 cause bugs. --- diff --git a/app/release/ICSer_V861_2106281209_release.apk b/app/release/ICSer_V861_2106281209_release.apk new file mode 100644 index 00000000..cead6b84 Binary files /dev/null and b/app/release/ICSer_V861_2106281209_release.apk differ diff --git a/app/release/ICSer_V879_2106282242_release.apk b/app/release/ICSer_V879_2106282242_release.apk new file mode 100644 index 00000000..3495ae5c Binary files /dev/null and b/app/release/ICSer_V879_2106282242_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index d943abc9..23a4ee8d 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":859,"versionName":"2106261553","enabled":true,"outputFile":"ICSer_V859_2106261553_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V859_2106261553_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":879,"versionName":"2106282242","enabled":true,"outputFile":"ICSer_V879_2106282242_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V879_2106282242_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 91c42f46..60eda8a0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -187,7 +187,6 @@ android:authorities="com.ic.fzd.settings" android:exported="true" /> - runningApps = am.getRunningAppProcesses(); + if (runningApps == null) { + return null; + } + for (ActivityManager.RunningAppProcessInfo procInfo : runningApps) { + if (procInfo.pid == pid) { + return procInfo.processName; + } + } + return null; + } + + @Override public void onCreate() { if (mHandler == null) { @@ -643,7 +662,10 @@ public class CoreService extends Service { mHandler = new Handler(handlerThread.getLooper()); } server_starting = true; - log("初始化网络协议服务"); + String curProcessName = getProcessName(this, android.os.Process.myPid()); + Log.d(TAG, "---> onCreate...."); + log("process name == > " + curProcessName + + " 初始化网络协议服务 " + Thread.currentThread().getId()); mProtocolServer = this; java.lang.Runtime.getRuntime().addShutdownHook(new Thread() { @Override @@ -1520,7 +1542,6 @@ public class CoreService extends Service { } ICLogger.i("retry 第" + retry_connect_count + " 次 , 连接服务器!"); this.connection.connect(this.runtime.getSrvIP(), this.runtime.getPort()); - } } } else { @@ -1569,6 +1590,7 @@ public class CoreService extends Service { @Override public void onDestroy() { super.onDestroy(); + ICLogger.d("onDestroy..."); saveStepCount(); this.connectionServiceChain.processDetach(this.connection, this.runtime); this.invokeHandlerServiceChain.processDetach(this.connection, this.runtime); diff --git a/app/src/main/java/com/enqualcomm/support/ICApplication.java b/app/src/main/java/com/enqualcomm/support/ICApplication.java index 815b9406..d7dcf50e 100644 --- a/app/src/main/java/com/enqualcomm/support/ICApplication.java +++ b/app/src/main/java/com/enqualcomm/support/ICApplication.java @@ -19,7 +19,6 @@ public class ICApplication extends Application { // private static final boolean DEBUG = BuildConfig.DEBUG; private static ICApplication instance = null; - public static Context sContext = null; @@ -62,7 +61,6 @@ public class ICApplication extends Application { public void onConfigurationChanged(Configuration newConfig) { ICLogger.i("onConfigurationChanged"); super.onConfigurationChanged(newConfig); - for (Object keyObj : mConfigurationChangedHandlerHashMap.keySet()) { String key = (String) keyObj; ICLogger.i("WatchApplication" + " onConfigurationChanged, " + key); diff --git a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java index 3d806422..0cc4a95e 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java +++ b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java @@ -126,7 +126,7 @@ public class Runtime { } public boolean isServerProtocolConnected() { - // ICLogger.d("ServerHeartBeadReceived == > " + ServerHeartBeadReceived); + ICLogger.d("ServerHeartBeadReceived == > " + ServerHeartBeadReceived); return ServerHeartBeadReceived; } diff --git a/app/src/main/java/com/enqualcomm/support/provider/FZDAlarmProvider.java b/app/src/main/java/com/enqualcomm/support/provider/FZDAlarmProvider.java index fce03280..416064b0 100644 --- a/app/src/main/java/com/enqualcomm/support/provider/FZDAlarmProvider.java +++ b/app/src/main/java/com/enqualcomm/support/provider/FZDAlarmProvider.java @@ -89,7 +89,6 @@ public class FZDAlarmProvider extends ContentProvider { long insert = writableDatabase.insert(FZDDatabaseHelper.tb_alarm, null, values); //设置闹钟 if (getContext() != null) { - getContext().sendBroadcast(new Intent(ACTION_ALARM_ALARM_CHANGE)); getContext().getContentResolver().notifyChange(uri, null); } return Uri.parse(AUTHORITY + "/" + PATH + "/" + insert); diff --git a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java index f826fad2..5633169f 100644 --- a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java +++ b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java @@ -123,7 +123,6 @@ public class HeartRateManager extends AbstractInvokeHandlerService { Intent intent = new Intent(); intent.setAction(ACTION_HEART_RATE); ICApplication.sContext.bindService(intent, mRemoteConnection, Context.BIND_AUTO_CREATE); - } public void init(Runtime runtime) { diff --git a/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java b/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java index d6fa200d..ef7356df 100644 --- a/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java +++ b/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java @@ -361,7 +361,6 @@ public class KeepAlive extends AbstractConnectionService { CoreService.getInstance().setLocationAlarm(paramRuntime.getLocationInstance().getWorkingMod()); } } else if (paramStringMessage.cmd().equals("login")) { - //广播服务器连接成功的消息 paramRuntime.getContextProxy().sendBroadcastServerConnectionChanged(true); //login成功后,上传当前版本号 diff --git a/app/src/main/java/com/enqualcomm/support/service/SilentManager.java b/app/src/main/java/com/enqualcomm/support/service/SilentManager.java index 10fe971e..25bd90b2 100644 --- a/app/src/main/java/com/enqualcomm/support/service/SilentManager.java +++ b/app/src/main/java/com/enqualcomm/support/service/SilentManager.java @@ -47,7 +47,7 @@ import static android.telephony.TelephonyManager.CALL_STATE_OFFHOOK; import static android.telephony.TelephonyManager.CALL_STATE_RINGING; import static com.enqualcomm.support.Constants.ACTION_ALARM_ALARM_CHANGE; import static com.enqualcomm.support.Constants.ACTION_ANTIOFF_ALARM_CHANGE; -import static com.enqualcomm.support.Constants.ACTION_CARE_ALARM; +import static com.enqualcomm.support.Constants.ACTION_IC_ALARM; import static com.enqualcomm.support.Constants.ACTION_CLOSE_UNREAD_MSG; import static com.enqualcomm.support.Constants.ACTION_NOTICE_ALARM_CHANGE; import static com.enqualcomm.support.Constants.OTHER_ALARM_END; @@ -241,7 +241,7 @@ public class SilentManager extends AbstractInvokeHandlerService { private PendingIntent getPendingIntent(String args, boolean repeat) { Intent intent = new Intent(this.mContext, CoreService.class); - intent.setAction(ACTION_CARE_ALARM); + intent.setAction(ACTION_IC_ALARM); intent.putExtra("IS_REPEAT", repeat); intent.setData(Uri.parse(args)); return PendingIntent.getService(this.mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); @@ -264,7 +264,7 @@ public class SilentManager extends AbstractInvokeHandlerService { args.append(dayOfWeek); week = args.toString(); Intent intent = new Intent(this.mContext, CoreService.class); - intent.setAction(ACTION_CARE_ALARM); + intent.setAction(ACTION_IC_ALARM); intent.putExtra("IS_REPEAT", repeat); intent.putExtra("TIME_STAMP", tmpTimeInMillis); intent.setData(Uri.parse(week)); @@ -635,7 +635,8 @@ public class SilentManager extends AbstractInvokeHandlerService { * @return */ private List updateIcAlarm() { - List alarmList = this.mDbHelper.queryAlarm(); + List alarmList = this.mDbHelper.queryIcAlarm(); + ICLogger.d("this.mInSilent == > " + this.mInSilent); if (!this.mInSilent) { if (this.alarms != null) { this.cancelAlarm(this.alarms); @@ -646,6 +647,7 @@ public class SilentManager extends AbstractInvokeHandlerService { e.printStackTrace(); } } + ICLogger.d("updateIcAlarm == > " + alarmList.size()); return alarmList; } @@ -729,10 +731,6 @@ public class SilentManager extends AbstractInvokeHandlerService { } else { //只是一次的闹铃 long tmpTimeInMillis; -// int dayofweek = weeklist[i] - 47; -// calendar.set(Calendar.DAY_OF_WEEK, dayofweek); -// tmpTimeInMillis = calendar.getTimeInMillis(); - Date date = new Date(System.currentTimeMillis()); ICLogger.i("date " + date.toLocaleString()); Calendar c = Calendar.getInstance(); @@ -847,7 +845,7 @@ public class SilentManager extends AbstractInvokeHandlerService { String action = intent.getAction(); ICLogger.d("action == > " + action); //如果是循环的,那么再设置下一次 - if (ACTION_CARE_ALARM.equals(action)) { + if (ACTION_IC_ALARM.equals(action)) { String alarmTime = intent.getDataString(); //alarm:ST00.43,W,CON,闹铃,2 ICLogger.d("alarmTime == > " + alarmTime); String currentTime = TimeUtil.getSystemTime(); @@ -875,6 +873,7 @@ public class SilentManager extends AbstractInvokeHandlerService { Intent targetIntent = new Intent("com.ic.alarm.action.ALARM_RING", Uri.parse(alarmTime)); targetIntent.putExtra("closeAlarm", 0); + targetIntent.addCategory(Intent.CATEGORY_DEFAULT); targetIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); this.mContext.startActivity(targetIntent); } catch (Exception e) { diff --git a/app/src/main/java/com/enqualcomm/support/utils/ICLogger.java b/app/src/main/java/com/enqualcomm/support/utils/ICLogger.java index 6072ec36..501c3470 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/ICLogger.java +++ b/app/src/main/java/com/enqualcomm/support/utils/ICLogger.java @@ -2,324 +2,318 @@ package com.enqualcomm.support.utils; import android.content.Context; -import com.enqualcomm.support.ICApplication; - -import org.apache.log4j.Appender; -import org.apache.log4j.FileAppender; -import org.apache.log4j.Layout; import org.apache.log4j.Level; import org.apache.log4j.Logger; import org.apache.log4j.PatternLayout; import org.apache.log4j.RollingFileAppender; -import org.apache.log4j.spi.ErrorHandler; -import org.apache.log4j.spi.Filter; -import org.apache.log4j.spi.LoggingEvent; import java.io.File; import java.io.IOException; import java.io.OutputStream; -import java.io.OutputStreamWriter; import java.io.PrintStream; import de.mindpipe.android.logging.log4j.LogConfigurator; - public class ICLogger { private static boolean isInitConfig = false; - private static Context mContext=null; - - private static Logger Log = null; - private static Logger GPS = null; - private static Logger Nmea = null; - private static Logger APILog = null; - private static Logger alarmCycle = null; - private static Logger Battery = null; - private static Logger LBS = null; - // private static java.util.logging.Logger originLog= java.util.logging.Logger.getLogger(ICLogger.class.getSimpleName()); - private static final boolean DEBUG = true; //BuildConfig.DEBUG; - - public static void setContext(Context context){ - mContext=context; - } - private static String getFunctionName() { - StackTraceElement[] currentStack = Thread.currentThread().getStackTrace(); - if (currentStack == null) { - return null; - } else { - int stackLen = currentStack.length; - - for(int i = 0; i < stackLen; ++i) { - StackTraceElement stackElement = currentStack[i]; - if (!stackElement.isNativeMethod() && !stackElement.getClassName().equals(Thread.class.getName()) && !stackElement.getClassName().equals(ICLogger.class.getName())) { - StringBuilder sb = new StringBuilder(); - sb.append("[ "); - sb.append(Thread.currentThread().getName()); - sb.append(": "); - sb.append(stackElement.getFileName()); - sb.append(":"); - sb.append(stackElement.getLineNumber()); - sb.append(" "); - sb.append(stackElement.getMethodName()); - sb.append(" ]"); - return sb.toString(); - } - } + private static Context mContext = null; + + private static Logger Log = null; + private static Logger GPS = null; + private static Logger Nmea = null; + private static Logger APILog = null; + private static Logger alarmCycle = null; + private static Logger Battery = null; + private static Logger LBS = null; + // private static java.util.logging.Logger originLog= java.util.logging.Logger.getLogger(ICLogger.class.getSimpleName()); + private static final boolean DEBUG = true; //BuildConfig.DEBUG; + + public static void setContext(Context context) { + mContext = context; + } - return null; + private static String getFunctionName() { + StackTraceElement[] currentStack = Thread.currentThread().getStackTrace(); + if (currentStack == null) { + return null; + } else { + int stackLen = currentStack.length; + + for (int i = 0; i < stackLen; ++i) { + StackTraceElement stackElement = currentStack[i]; + if (!stackElement.isNativeMethod() && !stackElement.getClassName().equals(Thread.class.getName()) && !stackElement.getClassName().equals(ICLogger.class.getName())) { + StringBuilder sb = new StringBuilder(); + sb.append("[ "); + sb.append(Thread.currentThread().getName()); + sb.append(": "); + sb.append(stackElement.getFileName()); + sb.append(":"); + sb.append(stackElement.getLineNumber()); + sb.append(" "); + sb.append(stackElement.getMethodName()); + sb.append(" ]"); + return sb.toString(); + } + } + + return null; + } } - } - - /** - 初始化与配置Logger Log4j - 日志信息格式中符号所代表的含义 - (1)-X号: X信息输出时左对齐。 - (2)%p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL。 - (3)%d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921。 - (4)%r: 输出自应用启动到输出该log信息耗费的毫秒数。 - (5)%c: 输出日志信息所属的类目,通常就是所在类的全名。 - (6)%t: 输出产生该日志事件的线程名。 - (7)%l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)。 - (8)%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。 - (9)%%: 输出一个"%"字符。 - (10)%F: 输出日志消息产生时所在的文件名称。 - (11)%L: 输出代码中的行号。 - (12)%m: 输出代码中指定的消息,产生的日志具体信息。 - (13)%n: 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"输出日志信息换行。 - 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如: - (1)%20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。 - (2)%-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。 - (3)%.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。 - (4)%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边交远销出的字符截掉。 - */ + + /** + * 初始化与配置Logger Log4j + * 日志信息格式中符号所代表的含义 + * (1)-X号: X信息输出时左对齐。 + * (2)%p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL。 + * (3)%d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921。 + * (4)%r: 输出自应用启动到输出该log信息耗费的毫秒数。 + * (5)%c: 输出日志信息所属的类目,通常就是所在类的全名。 + * (6)%t: 输出产生该日志事件的线程名。 + * (7)%l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)。 + * (8)%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。 + * (9)%%: 输出一个"%"字符。 + * (10)%F: 输出日志消息产生时所在的文件名称。 + * (11)%L: 输出代码中的行号。 + * (12)%m: 输出代码中指定的消息,产生的日志具体信息。 + * (13)%n: 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"输出日志信息换行。 + * 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如: + * (1)%20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。 + * (2)%-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。 + * (3)%.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。 + * (4)%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边交远销出的字符截掉。 + */ private static void initConfig() { - if (!isInitConfig) { + if (!isInitConfig) { - LogConfigurator logConfigurator = new LogConfigurator(); + LogConfigurator logConfigurator = new LogConfigurator(); - String filename=StorageUtils.getExternalStorageLogDir()+ File.separator + "log.txt"; - logConfigurator.setFileName(filename); // 日志存储路径,如果该路径没有会自动创建文件 - logConfigurator.setRootLevel(Level.ALL); + String filename = StorageUtils.getExternalStorageLogDir() + File.separator + "log.txt"; + logConfigurator.setFileName(filename); // 日志存储路径,如果该路径没有会自动创建文件 + logConfigurator.setRootLevel(Level.ALL); - logConfigurator.setLevel("log", Level.ALL); + logConfigurator.setLevel("log", Level.ALL); // logConfigurator.setFilePattern("%d %-5p [%c{2}]-[%L] %m%n");// 设置文件输出模式 - logConfigurator.setFilePattern("%d %m%n ");// 设置文件输出模式 + logConfigurator.setFilePattern("%d %m%n ");// 设置文件输出模式 // 02-29 16:28:38.195 4629-4658/com.enqualcomm.support E/com.enqualcomm.support.utils.ICLogger: - logConfigurator.setMaxBackupSize(2); // 设置最大备份数量 - logConfigurator.setMaxFileSize(1024 * 1024 * 20);// 设置最大文件大小 20MB - logConfigurator.setImmediateFlush(true);// 设置是否立即刷新 - logConfigurator.setUseFileAppender(true); // 设置用户文件输出器 - logConfigurator.setInternalDebugging(false); //控制console是否输出 - logConfigurator.setUseLogCatAppender(true); - logConfigurator.setLogCatPattern("%m%n"); - logConfigurator.configure();// 设置提交 + logConfigurator.setMaxBackupSize(2); // 设置最大备份数量 + logConfigurator.setMaxFileSize(1024 * 1024 * 20);// 设置最大文件大小 20MB + logConfigurator.setImmediateFlush(true);// 设置是否立即刷新 + logConfigurator.setUseFileAppender(true); // 设置用户文件输出器 + logConfigurator.setInternalDebugging(false); //控制console是否输出 + logConfigurator.setUseLogCatAppender(true); + logConfigurator.setLogCatPattern("%m%n"); + logConfigurator.configure();// 设置提交 // String logfilelist[]={"Log","GPS","Nmea","APILog","alarmCycle","Battery","LBS"}; - //Log 和log目前是同一个配置 - Log = Logger.getLogger("log"); - Log.info("init Logger "+Log.getName()); + //Log 和log目前是同一个配置 + Log = Logger.getLogger("log"); + Log.info("init Logger " + Log.getName()); // Log.addAppender( getRollingFileAppender("log","%d %m%n ")); // Log.info("init Logger "+Log.getName()+" "+((RollingFileAppender)Log.getAppender("log")).getFile()); - GPS = Logger.getLogger("GPS"); - GPS.addAppender( getRollingFileAppender("GPS","%d %m%n ")); - GPS.info("init Logger "+GPS.getName()+" "+((RollingFileAppender)GPS.getAppender("GPS")).getFile()); + GPS = Logger.getLogger("GPS"); + GPS.addAppender(getRollingFileAppender("GPS", "%d %m%n ")); + GPS.info("init Logger " + GPS.getName() + " " + ((RollingFileAppender) GPS.getAppender("GPS")).getFile()); - Nmea = Logger.getLogger("Nmea"); - Nmea.addAppender( getRollingFileAppender("Nmea","%m%n")); - Nmea.info("init Logger "+Nmea.getName()+" "+((RollingFileAppender)Nmea.getAppender("Nmea")).getFile()); + Nmea = Logger.getLogger("Nmea"); + Nmea.addAppender(getRollingFileAppender("Nmea", "%m%n")); + Nmea.info("init Logger " + Nmea.getName() + " " + ((RollingFileAppender) Nmea.getAppender("Nmea")).getFile()); - APILog = Logger.getLogger("APILog"); - APILog.addAppender( getRollingFileAppender("APILog","%d %m%n ")); - APILog.info("init Logger "+APILog.getName()+" "+((RollingFileAppender)APILog.getAppender("APILog")).getFile()); + APILog = Logger.getLogger("APILog"); + APILog.addAppender(getRollingFileAppender("APILog", "%d %m%n ")); + APILog.info("init Logger " + APILog.getName() + " " + ((RollingFileAppender) APILog.getAppender("APILog")).getFile()); - alarmCycle = Logger.getLogger("alarmCycle"); - alarmCycle.addAppender( getRollingFileAppender("alarmCycle","%d %m%n ")); - alarmCycle.info("init Logger "+alarmCycle.getName()+" "+((RollingFileAppender)alarmCycle.getAppender("alarmCycle")).getFile()); + alarmCycle = Logger.getLogger("alarmCycle"); + alarmCycle.addAppender(getRollingFileAppender("alarmCycle", "%d %m%n ")); + alarmCycle.info("init Logger " + alarmCycle.getName() + " " + ((RollingFileAppender) alarmCycle.getAppender("alarmCycle")).getFile()); - Battery = Logger.getLogger("Battery"); - Battery.addAppender( getRollingFileAppender("Battery","%d %m%n ")); - Battery.info("init Logger "+Battery.getName()+" "+((RollingFileAppender)Battery.getAppender("Battery")).getFile()); + Battery = Logger.getLogger("Battery"); + Battery.addAppender(getRollingFileAppender("Battery", "%d %m%n ")); + Battery.info("init Logger " + Battery.getName() + " " + ((RollingFileAppender) Battery.getAppender("Battery")).getFile()); - LBS = Logger.getLogger("LBS"); - LBS.addAppender( getRollingFileAppender("LBS","%d %m%n ")); - LBS.info("init Logger "+LBS.getName()+" "+((RollingFileAppender)LBS.getAppender("LBS")).getFile()); - isInitConfig = true; - } + LBS = Logger.getLogger("LBS"); + LBS.addAppender(getRollingFileAppender("LBS", "%d %m%n ")); + LBS.info("init Logger " + LBS.getName() + " " + ((RollingFileAppender) LBS.getAppender("LBS")).getFile()); + isInitConfig = true; + } } - public static void logRAWtoFile(String filename,String msg){ - if (filename.equals("Nmea")){ - Nmea.info(msg); - }else if (filename.equals("LBS")) { - LBS.info(msg); - }else if (filename.equals("GPS")) { - GPS.info(msg); - }else if (filename.equals("APILog")) { - APILog.info(msg); - }else if (filename.equals("alarmCycle")) { - alarmCycle.info(msg); - }else if (filename.equals("Battery")) { - Battery.info(msg); - }else { - Log.info(msg); - } + public static void logRAWtoFile(String filename, String msg) { + if (filename.equals("Nmea")) { + Nmea.info(msg); + } else if (filename.equals("LBS")) { + LBS.info(msg); + } else if (filename.equals("GPS")) { + GPS.info(msg); + } else if (filename.equals("APILog")) { + APILog.info(msg); + } else if (filename.equals("alarmCycle")) { + alarmCycle.info(msg); + } else if (filename.equals("Battery")) { + Battery.info(msg); + } else { + Log.info(msg); + } } - public static void logToFile(String filename,String msg){ - if (filename.equals("Nmea")){ - Nmea.info(msg); - }else if (filename.equals("LBS")) { - LBS.info(msg); - }else if (filename.equals("GPS")) { - GPS.info(msg); - }else if (filename.equals("APILog")) { - APILog.info(msg); - }else if (filename.equals("alarmCycle")) { - alarmCycle.info(msg); - }else if (filename.equals("Battery")) { - Battery.info(msg); - }else { - Log.info(msg); + + public static void logToFile(String filename, String msg) { + if (filename.equals("Nmea")) { + Nmea.info(msg); + } else if (filename.equals("LBS")) { + LBS.info(msg); + } else if (filename.equals("GPS")) { + GPS.info(msg); + } else if (filename.equals("APILog")) { + APILog.info(msg); + } else if (filename.equals("alarmCycle")) { + alarmCycle.info(msg); + } else if (filename.equals("Battery")) { + Battery.info(msg); + } else { + Log.info(msg); + } } - } - private static RollingFileAppender getRollingFileAppender(String name,String layoutpattern){ - PatternLayout fileLayout = new PatternLayout(layoutpattern); - String filename=StorageUtils.getExternalStorageLogDir()+ File.separator + name+".txt"; - RollingFileAppender rollingFileAppender= null; - try { - rollingFileAppender = new RollingFileAppender(fileLayout,filename); - } catch (IOException e) { - e.printStackTrace(); - ICLogger.e(e.getMessage(),e); - return null; - } - rollingFileAppender.setName(name); - rollingFileAppender.setMaxBackupIndex(2); //最多3个备份文件 - rollingFileAppender.setMaximumFileSize(10*1024*1024); //10M 大小 - rollingFileAppender.setImmediateFlush(true); - - return rollingFileAppender; + + private static RollingFileAppender getRollingFileAppender(String name, String layoutpattern) { + PatternLayout fileLayout = new PatternLayout(layoutpattern); + String filename = StorageUtils.getExternalStorageLogDir() + File.separator + name + ".txt"; + RollingFileAppender rollingFileAppender = null; + try { + rollingFileAppender = new RollingFileAppender(fileLayout, filename); + } catch (IOException e) { + e.printStackTrace(); + ICLogger.e(e.getMessage(), e); + return null; + } + rollingFileAppender.setName(name); + rollingFileAppender.setMaxBackupIndex(2); //最多3个备份文件 + rollingFileAppender.setMaximumFileSize(10 * 1024 * 1024); //10M 大小 + rollingFileAppender.setImmediateFlush(true); + + return rollingFileAppender; } public static void v(String msg) { - initConfig(); - if (Log!=null) - Log.debug(buildMessage(msg)); + initConfig(); + if (Log != null) + Log.debug(buildMessage(msg)); } public static void v(String msg, Throwable thr) { - initConfig(); - if (Log!=null) - Log.debug(buildMessage(msg), thr); + initConfig(); + if (Log != null) + Log.debug(buildMessage(msg), thr); } public static void d(String msg) { - initConfig(); - if (Log!=null) - Log.debug(buildMessage(msg)); + initConfig(); + if (Log != null) + Log.debug(buildMessage(msg)); } public static void d(String msg, Throwable thr) { - initConfig(); - if (Log!=null) - Log.debug(buildMessage(msg), thr); + initConfig(); + if (Log != null) + Log.debug(buildMessage(msg), thr); } public static void i(String msg) { - initConfig(); - if (Log!=null) - Log.info(buildMessage(msg)); + initConfig(); + if (Log != null) + Log.info(buildMessage(msg)); } public static void i(String msg, Throwable thr) { - initConfig(); - if (Log!=null) - Log.info(buildMessage(msg), thr); + initConfig(); + if (Log != null) + Log.info(buildMessage(msg), thr); } public static void w(String msg) { - initConfig(); - if (Log!=null) - Log.warn(buildMessage(msg)); + initConfig(); + if (Log != null) + Log.warn(buildMessage(msg)); } public static void w(String msg, Throwable thr) { - initConfig(); - if (Log!=null) - Log.warn(buildMessage(msg), thr); + initConfig(); + if (Log != null) + Log.warn(buildMessage(msg), thr); } public static void w(Throwable thr) { - initConfig(); - if (Log!=null) - Log.warn(buildMessage(""), thr); + initConfig(); + if (Log != null) + Log.warn(buildMessage(""), thr); } public static void e(String msg) { - initConfig(); - if (Log!=null) - Log.error(buildMessage(msg)); + initConfig(); + if (Log != null) + Log.error(buildMessage(msg)); } public static void e(String msg, Throwable thr) { - initConfig(); - if (Log!=null) - Log.error(buildMessage(msg), thr); + initConfig(); + if (Log != null) + Log.error(buildMessage(msg), thr); } - public static void PrintExceptionStackTrace(Exception e){ - - StringBuffer sb=new StringBuffer(); - sb.append(e.getMessage()).append("\n"); - e.printStackTrace(new PrintStream(new OutputStream() { - @Override - public void write(int b) throws IOException { - sb.append((char)b); - } - })); - i(sb.toString()); + public static void PrintExceptionStackTrace(Exception e) { + + StringBuffer sb = new StringBuffer(); + sb.append(e.getMessage()).append("\n"); + e.printStackTrace(new PrintStream(new OutputStream() { + @Override + public void write(int b) throws IOException { + sb.append((char) b); + } + })); + i(sb.toString()); } /** * 生成消息 + * * @param msg * @return */ protected static String buildMessage(String msg) { - initConfig(); - if (DEBUG && msg !=null) { - String var1 = getFunctionName(); - if (var1 != null) { - StringBuilder sb = new StringBuilder(); - sb.append(var1); - sb.append(" - "); - sb.append(msg); - return sb.toString(); - }else{ - return "functionName is null"; + initConfig(); + if (DEBUG && msg != null) { + String var1 = getFunctionName(); + if (var1 != null) { + StringBuilder sb = new StringBuilder(); + sb.append(var1); + sb.append(" - "); + sb.append(msg); + return sb.toString(); + } else { + return "functionName is null"; + } + } else { + return "msg is null"; } - }else{ - return "msg is null"; - } } - public static void log(String TAG, String msg) { - if (DEBUG) { - if (Log!=null)Log.debug(TAG+ " "+msg); + public static void log(String TAG, String msg) { + if (DEBUG) { + if (Log != null) Log.debug(TAG + " " + msg); + } } - } - public static void log(String TAG,String funcName, String msg) { - if (DEBUG) { - if (Log!=null) - Log.debug(TAG + " [" + funcName + "]" + msg); + public static void log(String TAG, String funcName, String msg) { + if (DEBUG) { + if (Log != null) + Log.debug(TAG + " [" + funcName + "]" + msg); + } } - } } diff --git a/app/src/main/java/com/enqualcomm/support/utils/NetworkObservable.java b/app/src/main/java/com/enqualcomm/support/utils/NetworkObservable.java index 632ded28..bb3bc950 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/NetworkObservable.java +++ b/app/src/main/java/com/enqualcomm/support/utils/NetworkObservable.java @@ -1,88 +1,89 @@ package com.enqualcomm.support.utils; - import android.content.BroadcastReceiver; - import android.content.Context; - import android.content.Intent; - import android.content.IntentFilter; - import android.net.ConnectivityManager; - import android.net.Network; - import android.net.NetworkInfo; - import com.enqualcomm.support.service.KeepAlive; - import rx.Observable; - import rx.subjects.BehaviorSubject; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; + +import com.enqualcomm.support.service.KeepAlive; + +import rx.Observable; +import rx.subjects.BehaviorSubject; public class NetworkObservable { - static String lastActivType="off"; - BroadcastReceiver mNetStateBroadcastReceiver = new BroadcastReceiver() { - public void onReceive(Context context, Intent intent) { - NetworkInfo networkInfo = ((ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo(); + static String lastActivType = "off"; + BroadcastReceiver mNetStateBroadcastReceiver = new BroadcastReceiver() { + public void onReceive(Context context, Intent intent) { + NetworkInfo networkInfo = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo(); // NetworkInfo wifiinfo=((ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE)).getNetworkInfo(ConnectivityManager.TYPE_WIFI); // NetworkInfo mobileinfo=((ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE)).getNetworkInfo(ConnectivityManager.TYPE_MOBILE); // ICLogger.i("active network type = "+wifiinfo.getTypeName()+", status="+wifiinfo.getState().name()); // ICLogger.i("active network type = "+mobileinfo.getTypeName()+", status="+mobileinfo.getState().name()); - if (networkInfo != null && networkInfo.isAvailable()) { - if (lastActivType!=networkInfo.getTypeName()){ - lastActivType=networkInfo.getTypeName(); - active_network_changed=true; - }else{ - active_network_changed=false; - } - StringBuilder var4 = new StringBuilder(); + if (networkInfo != null && networkInfo.isAvailable()) { + if (lastActivType != networkInfo.getTypeName()) { + lastActivType = networkInfo.getTypeName(); + active_network_changed = true; + } else { + active_network_changed = false; + } + StringBuilder var4 = new StringBuilder(); + + var4.append("BroadcastReceiver---网络连接成功 KeepAlive.isConnected="); + var4.append(KeepAlive.isConnected); + var4.append(",active_network_changed="); + var4.append(active_network_changed); + var4.append(",network_is_from_no_to_yes="); + var4.append(network_is_from_no_to_yes); + var4.append(",network_type=").append(networkInfo.getTypeName()); + ICLogger.i(var4.toString()); + if (!KeepAlive.isConnected && !network_is_from_no_to_yes) { + //如果serversocket 未连接成功,且之前网络未断开重连 + if (active_network_changed) { + //如果之前一次是网络断开,则重连 + objectPublishSubject.onNext(2); + } else { + //如果之前网络正常,则无需重连 + objectPublishSubject.onNext(1); + } + } else if (network_is_from_no_to_yes) { + //如果是断网重连,则证明需要重连 + objectPublishSubject.onNext(3); + } else if (KeepAlive.isConnected) { + //如果网络实际连接的,就无需重连 + active_network_changed = false; + } + //下次在有新状态,无需重连 + network_is_from_no_to_yes = false; + } else { + ICLogger.i("网络断开"); + lastActivType = "off"; + network_is_from_no_to_yes = true; //断网了,则下次变化必然是 FromNoToYes,需要重连 所以为 True + objectPublishSubject.onNext(0); //发送断网消息。 + } - var4.append("BroadcastReceiver---网络连接成功 KeepAlive.isConnected="); - var4.append(KeepAlive.isConnected); - var4.append(",active_network_changed="); - var4.append(active_network_changed); - var4.append(",network_is_from_no_to_yes="); - var4.append(network_is_from_no_to_yes); - var4.append(",network_type=").append(networkInfo.getTypeName()); - ICLogger.i(var4.toString()); - if (!KeepAlive.isConnected && !network_is_from_no_to_yes) { - //如果serversocket 未连接成功,且之前网络未断开重连 - if (active_network_changed) { - //如果之前一次是网络断开,则重连 - objectPublishSubject.onNext(2); - } else { - //如果之前网络正常,则无需重连 - objectPublishSubject.onNext(1); - } - } else if (network_is_from_no_to_yes) { - //如果是断网重连,则证明需要重连 - objectPublishSubject.onNext(3); - } else if (KeepAlive.isConnected) { - //如果网络实际连接的,就无需重连 - active_network_changed = false; } - //下次在有新状态,无需重连 - network_is_from_no_to_yes = false; - } else { - ICLogger.i("网络断开"); - lastActivType="off"; - network_is_from_no_to_yes = true; //断网了,则下次变化必然是 FromNoToYes,需要重连 所以为 True - objectPublishSubject.onNext(0); //发送断网消息。 - } + }; + private boolean active_network_changed = false; + private boolean network_is_from_no_to_yes = true; + BehaviorSubject objectPublishSubject = BehaviorSubject.create(); + public NetworkObservable() { } - }; - private boolean active_network_changed = false; - private boolean network_is_from_no_to_yes = true; - BehaviorSubject objectPublishSubject = BehaviorSubject.create(); - - public NetworkObservable() { - } - public Observable onChange() { - return this.objectPublishSubject.distinctUntilChanged(); - } + public Observable onChange() { + return this.objectPublishSubject.distinctUntilChanged(); + } - public void register(Context var1) { - IntentFilter var2 = new IntentFilter(); - var2.addAction("android.net.conn.CONNECTIVITY_CHANGE"); - var1.registerReceiver(this.mNetStateBroadcastReceiver, var2); - } + public void register(Context var1) { + IntentFilter var2 = new IntentFilter(); + var2.addAction("android.net.conn.CONNECTIVITY_CHANGE"); + var1.registerReceiver(this.mNetStateBroadcastReceiver, var2); + } - public void unregister(Context var1) { - var1.unregisterReceiver(this.mNetStateBroadcastReceiver); - } + public void unregister(Context var1) { + var1.unregisterReceiver(this.mNetStateBroadcastReceiver); + } } diff --git a/app/src/main/java/com/enqualcomm/support/utils/RxSocket.java b/app/src/main/java/com/enqualcomm/support/utils/RxSocket.java index 7da9b62f..6401f140 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/RxSocket.java +++ b/app/src/main/java/com/enqualcomm/support/utils/RxSocket.java @@ -184,7 +184,8 @@ public class RxSocket { @Override public void call(Subscriber subscriber) { try { - if (socketStatus == SocketStatus.DIS_CONNECT || socketStatus == SocketStatus.DIS_CONNECT_BY_SERVERSIDE) { + if (socketStatus == SocketStatus.DIS_CONNECT + || socketStatus == SocketStatus.DIS_CONNECT_BY_SERVERSIDE) { subscriber.onNext(true); subscriber.onCompleted(); } else { @@ -299,10 +300,12 @@ public class RxSocket { @Override public void run() { - ICLogger.log(TAG, "ReadThread:" + "start"); + ICLogger.log(TAG, "ReadThread:" + "start == > " + + isReadThreadAlive + " ip == > " + ip + " port == > " + port); while (isReadThreadAlive) { //连接 - if (socketStatus == SocketStatus.DIS_CONNECT || socketStatus == SocketStatus.DIS_CONNECT_BY_SERVERSIDE) { + if (socketStatus == SocketStatus.DIS_CONNECT || + socketStatus == SocketStatus.DIS_CONNECT_BY_SERVERSIDE) { try { Thread.sleep(10); if (selectionKey != null) selectionKey.cancel(); diff --git a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java index be327e5f..6b45dcc1 100644 --- a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java @@ -188,7 +188,7 @@ public class protocolAPIHelper { return ret; } - public static StringMessage getDeviceVersion(Runtime runtime){ + public static StringMessage getDeviceVersion(Runtime runtime) { if (is_protocol_not_Initialled()) return null; StringMessage ret = null; switch (Config.protocol_no) { @@ -218,6 +218,7 @@ public class protocolAPIHelper { } + public static StringMessage getSyncTimeMSG(Runtime runtime) { if (is_protocol_not_Initialled()) return null; StringMessage ret = null; @@ -257,7 +258,7 @@ public class protocolAPIHelper { return null; } } - if(temp_adusted<=0 && body_temp<=0){ + if (temp_adusted <= 0 && body_temp <= 0) { ICLogger.i("腕温,体温都 <= 0 跳过上传消息 !"); return null; } @@ -279,7 +280,7 @@ public class protocolAPIHelper { ret = protocol_mqtt.temp(body_temp, runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.APTP(temp_adusted, body_temp, tempout); break; case Config.PROTOCOL_GATOR: ret = null; @@ -308,7 +309,8 @@ public class protocolAPIHelper { ret = protocol_anan.APCH(charging); break; case Config.PROTOCOL_S123: - ret = null; + if (Config.custom_name.equals("VitracK")) + ret = protocol_ic.APCH(charging); break; case Config.PROTOCOL_GATOR: ret = null; @@ -341,7 +343,7 @@ public class protocolAPIHelper { ret = protocol_anan.AP10(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.AP10(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -373,7 +375,7 @@ public class protocolAPIHelper { ret = protocol_anan.AP00(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.AP00(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -405,7 +407,8 @@ public class protocolAPIHelper { ret = protocol_anan.AP03(runtime); break; case Config.PROTOCOL_S123: - ret = null; + //ret = protocol_s123.AP00(runtime); + ret = protocol_ic.AP03(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -437,7 +440,7 @@ public class protocolAPIHelper { ret = protocol_anan.AP01(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.AP01(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -469,7 +472,7 @@ public class protocolAPIHelper { ret = protocol_anan.AP02(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.AP02(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -510,7 +513,16 @@ public class protocolAPIHelper { ret = protocol_anan.AP07(packetTime, count, index, datalen, amrdata); break; case Config.PROTOCOL_S123: - ret = null; + /*** + * * 1 语音—— 1.监听语音 * 2.SOS语音 * 3.扩展 + * * 2 图片—— 1.签到图片 * 2.指令图片 * 3.设备图片 * 4.扩展 + */ + if (filetype == 1 && datatype == 3) { + //对讲用的类型 + ret = protocol_ic.AP07(packetTime, count, index, datalen, amrdata); + } else { + ret = protocol_ic.APTU(packetTime, filetype, datatype, count, index, datalen, amrdata); + } break; case Config.PROTOCOL_GATOR: ret = null; @@ -523,7 +535,7 @@ public class protocolAPIHelper { if (is_protocol_not_Initialled()) return null; StringMessage ret = null; - if(runtime==null || runtime.getHRS().getPPG()<=0 ){ + if (runtime == null || runtime.getHRS().getPPG() <= 0) { ICLogger.d(" 心率 值 <=0 跳过异常数据!"); return null; } @@ -548,7 +560,7 @@ public class protocolAPIHelper { ret = protocol_anan.APHT(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.APHP(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -560,7 +572,7 @@ public class protocolAPIHelper { public static StringMessage getPPG_ECG_MSG(Runtime runtime, int ppg, int bph, int bpl) { if (is_protocol_not_Initialled()) return null; StringMessage ret = null; - if(runtime==null || runtime.getHRS().getPPG()<=0 ){ + if (runtime == null || runtime.getHRS().getPPG() <= 0) { ICLogger.d(" 心率 值 <=0 跳过异常数据!"); return null; } @@ -584,7 +596,7 @@ public class protocolAPIHelper { ret = protocol_anan.APHT(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.APHT(ppg, bph, bpl); break; case Config.PROTOCOL_GATOR: ret = null; @@ -726,7 +738,7 @@ public class protocolAPIHelper { ret = null; break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.APHP(ppg, bph, bpl, spo2); break; case Config.PROTOCOL_GATOR: ret = null; @@ -759,7 +771,7 @@ public class protocolAPIHelper { //ret = protocol_anan.APTQ(runtime); break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.APTQ(runtime); break; case Config.PROTOCOL_GATOR: ret = null; @@ -791,10 +803,10 @@ public class protocolAPIHelper { ret = protocol_anan.defaultServerIp; break; case Config.PROTOCOL_S123: - ret = protocol_s123.defaultServerIP; + ret = protocol_s123.defaultServerIP; break; case Config.PROTOCOL_GATOR: - ret = protocol_gator.defaultServerIP; + ret = protocol_gator.defaultServerIP; break; } ICLogger.d("ip ==> " + ret); @@ -857,7 +869,11 @@ public class protocolAPIHelper { ret = null; break; case Config.PROTOCOL_S123: - ret = null; + if (Config.getProtocolServerHost(runtime.getContextProxy().context).equals(protocol_jiai.defaultServerIP)) { + ret = null; + } else { + ret = protocol_ic.APSL(sr.getCurrentDate(), sr.getDeepsleep_minutes(), sr.getLightsleep_minutes(), sr.getScore()); + } break; case Config.PROTOCOL_GATOR: ret = null; @@ -949,7 +965,7 @@ public class protocolAPIHelper { ret = null; break; case Config.PROTOCOL_S123: - ret = null; + ret = protocol_ic.APBR(runtime); break; case Config.PROTOCOL_GATOR: ret = null; diff --git a/app/src/main/java/com/ic/protocols/protocol_s123.java b/app/src/main/java/com/ic/protocols/protocol_s123.java index e3f57952..2f5e7b91 100644 --- a/app/src/main/java/com/ic/protocols/protocol_s123.java +++ b/app/src/main/java/com/ic/protocols/protocol_s123.java @@ -46,6 +46,7 @@ import java.util.HashMap; import java.util.List; import java.util.Locale; +import static com.enqualcomm.support.Constants.ACTION_ALARM_ALARM_CHANGE; import static com.enqualcomm.support.Constants.DIALOG_ACTION; import static com.enqualcomm.support.Constants.FROM_SERVER; import static com.enqualcomm.support.LocationClient.LOCATION_MODE; @@ -66,8 +67,8 @@ import static java.lang.Math.abs; * customserverport=8083 */ public class protocol_s123 { - private static final String TAG = "ICSrv." + protocol_s123.class.getSimpleName(); + private static final String TAG = "ICSrv." + protocol_s123.class.getSimpleName(); private static final String CMDHEADER = "IW"; private static final String CMDEND = "#"; private static final String CMDSPLIT = ","; @@ -971,20 +972,20 @@ public class protocol_s123 { //设置闹钟 public void handleBP85(String cmd, Connection connection, Runtime runtime) { -// IWBP85,867155030001063,155312,1,1,0235,12,1,1 -// IWBP85,867155030002145,945166,1,0, -// IWBP85,867155030001064,265960,1,1,1130,,1,1 -// IWBP85,353456789012345,080835,1,3, 0900,135,1,1@0900 ,135,1,2@0900 ,135,1,3# -//353456789012345:IMEI号,设备唯一ID -//080835 :指令流水号 -//1: 表示闹钟总开关,1为开,0 为关 -//3: 表示闹钟个数 -//0900 ,135,1,1,表示一组闹钟,0900表示早上09:00, 135表示周一周三周五,使用24小时制 -//1表示该组闹钟开启或关闭状态 1表示开启 0表示关闭 -//1表示吃药提醒 -//2 表示喝水提醒 -//3 表示久坐提醒 -//多组闹钟之间用”@”符号分隔 + // IWBP85,867155030001063,155312,1,1,0235,12,1,1 + // IWBP85,867155030002145,945166,1,0, + // IWBP85,867155030001064,265960,1,1,1130,,1,1 + // IWBP85,353456789012345,080835,1,3, 0900,135,1,1@0900 ,135,1,2@0900 ,135,1,3# + //353456789012345:IMEI号,设备唯一ID + //080835 :指令流水号 + //1: 表示闹钟总开关,1为开,0 为关 + //3: 表示闹钟个数 + //0900 ,135,1,1,表示一组闹钟,0900表示早上09:00, 135表示周一周三周五,使用24小时制 + //1表示该组闹钟开启或关闭状态 1表示开启 0表示关闭 + //1表示吃药提醒 + //2 表示喝水提醒 + //3 表示久坐提醒 + //多组闹钟之间用”@”符号分隔 String imei = "", cmdindex = "0"/*指令流水号*/; int all_alarmswitch = 0 /*总开关 1为开,0 为关*/, @@ -3462,8 +3463,6 @@ public class protocol_s123 { Alarm alarmItem = new Alarm("ST" + alarmTime.substring(0, 2) + "." + alarmTime.substring(2), "W" + weekItem, "CON", "1".equals(isOpen) ? "ON" : "OFF", alarmName); ICLogger.d("alarmItem == > " + alarmName); - //设置闹钟 - //TODO: //入库 ContentValues contentValues = new ContentValues(); contentValues.put(FZDDatabaseHelper.alarm_name, alarmItem.name); @@ -3475,6 +3474,8 @@ public class protocol_s123 { contentValues.put(FZDDatabaseHelper.createTime, System.currentTimeMillis()); resolver.insert(Uri.parse(FZDAlarmProvider.ALARMS), contentValues); } + //设置闹钟 + mRuntime.getContextProxy().context.sendBroadcast(new Intent(ACTION_ALARM_ALARM_CHANGE)); } catch (Exception e) { e.printStackTrace(); } diff --git a/app/version_code.properties b/app/version_code.properties index d9042adc..5f2d7c3e 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,5 +1,5 @@ -#Sat Jun 26 15:53:09 CST 2021 +#Mon Jun 28 22:42:14 CST 2021 >>>>>>>=b405d1184f3616d4e894d199cee0eb91613a68db -VERSION_CODE=859 +VERSION_CODE=879 =\=\=\=\=\=\= <<<<<<<=HEAD diff --git a/local.properties b/local.properties index 0cdc2a6c..70a3febd 100644 --- a/local.properties +++ b/local.properties @@ -5,4 +5,4 @@ # For customization when using a Version Control System, please read the # header note. #Sat Jun 26 13:03:49 CST 2021 -sdk.dir=C\:\\Users\\incar\\AppData\\Local\\Android\\Sdk +sdk.dir=E\:\\Android\\Sdk \ No newline at end of file