release V397
authorsnickersun <scy@incartech.cn>
Fri, 10 Apr 2020 03:35:39 +0000 (11:35 +0800)
committersnickersun <scy@incartech.cn>
Fri, 10 Apr 2020 03:35:39 +0000 (11:35 +0800)
LocationClient的定时更严格,采用硬件定时器解决。

16 files changed:
app/release/ICSer_V396_2004082225_release.apk [deleted file]
app/release/ICSer_V397_2004101116_release.apk [new file with mode: 0644]
app/src/main/AndroidManifest.xml
app/src/main/java/com/enqualcomm/support/Constants.java
app/src/main/java/com/enqualcomm/support/CoreService.java
app/src/main/java/com/enqualcomm/support/LocationClient.java
app/src/main/java/com/enqualcomm/support/MainActivity.java
app/src/main/java/com/enqualcomm/support/adapter/protocolAPIHelper.java
app/src/main/java/com/enqualcomm/support/bean/Runtime.java
app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java
app/src/main/java/com/enqualcomm/support/service/KeepAlive.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/AlarmWakeUp.java
app/src/main/java/com/enqualcomm/support/utils/CellInfoUtil.java
app/version_code.properties

diff --git a/app/release/ICSer_V396_2004082225_release.apk b/app/release/ICSer_V396_2004082225_release.apk
deleted file mode 100644 (file)
index 43ee67e..0000000
Binary files a/app/release/ICSer_V396_2004082225_release.apk and /dev/null differ
diff --git a/app/release/ICSer_V397_2004101116_release.apk b/app/release/ICSer_V397_2004101116_release.apk
new file mode 100644 (file)
index 0000000..f32c78c
Binary files /dev/null and b/app/release/ICSer_V397_2004101116_release.apk differ
index 3d03389..c77b132 100644 (file)
                 <action android:name="com.enqualcomm.support.CloseUnreadMsg" />
                 <action android:name="android.intent.action.BATTERY_LOW" />
                 <action android:name="com.enqualcomm.support.ACTION_MISSED_CALL_GET" />
-
+                <action android:name="com.enqualcomm.support.ACTION_CHECK_SERVER_RESPONSE" />
+                <action android:name="com.enqualcomm.support.ACTION_RETRY_SERVER_CONNECT" />
+                <action android:name="com.enqualcomm.support.ACTION_CHECK_LOCATION_RESULT" />
                 <!-- <action android:name="com.eqc.heartrate.action.SILENT_START" /> -->
             </intent-filter>
         </receiver>
index 42cb2af..e7c131f 100644 (file)
@@ -272,5 +272,12 @@ public interface Constants {
   public static final String contact = "contact";\r
   \r
   public static final String wechat_contact = "content";\r
+\r
+\r
+  public static final String ACTION_CHECK_SERVER_RESPONSE = "com.enqualcomm.support.ACTION_CHECK_SERVER_RESPONSE";\r
+  public static final String ACTION_RETRY_SERVER_CONNECT = "com.enqualcomm.support.ACTION_RETRY_SERVER_CONNECT";\r
+  public static final String ACTION_CHECK_LOCATION_RESULT = "com.enqualcomm.support.ACTION_CHECK_LOCATION_RESULT";\r
+\r
+\r
 }\r
 \r
index f7ccdf6..213626a 100644 (file)
@@ -684,7 +684,13 @@ public class CoreService extends Service {
                 if (Config.LOG_TOFILE) ICLogger.logToFile("alarmCycle", stringBuilder1.toString());\r
 //                this.locationClient.triggerLocationProcess();\r
 \r
-            } else if (Constants.SLEEP_ALARM.equals(paramIntent.getAction())) {\r
+            }else if (Constants.ACTION_CHECK_SERVER_RESPONSE.equals(paramIntent.getAction())) {\r
+                //暂时还使用 ScheduledThreadPoolExecutor , 时间要求不是那么的严格\r
+            }else if (Constants.ACTION_RETRY_SERVER_CONNECT.equals(paramIntent.getAction())) {\r
+                //暂时还使用 ScheduledThreadPoolExecutor , 时间要求不是那么的严格\r
+            }else if (Constants.ACTION_CHECK_LOCATION_RESULT.equals(paramIntent.getAction())) {\r
+                locationClient.waitAndSendLocation();\r
+            }else if (Constants.SLEEP_ALARM.equals(paramIntent.getAction())) {\r
                 StringBuilder stringBuilder1;\r
                 ICLogger.i("SLEEP_ALARM");\r
                 is_allowed_in_sleep_mode = 1;\r
@@ -947,7 +953,16 @@ public class CoreService extends Service {
 \r
     public void stopConnectionRetryTimer(){\r
         if (mTimer_retry_connect !=null){\r
-            mTimer_retry_connect.shutdown();\r
+            mTimer_retry_connect.shutdownNow();\r
+//            while(!mTimer_retry_connect.isTerminated())\r
+//            {\r
+//                ICLogger.i("Wait for thread pool terminated");\r
+//                try {\r
+//                    Thread.sleep(500);\r
+//                } catch (InterruptedException e) {\r
+//                    e.printStackTrace();\r
+//                }\r
+//            }\r
             mTimer_retry_connect.purge();\r
             mTimer_retry_connect = null;\r
         }\r
index 9e55428..6b23714 100644 (file)
@@ -46,6 +46,7 @@ import rx.android.schedulers.AndroidSchedulers;
 import rx.functions.Action1;\r
 \r
 import static android.location.LocationManager.GPS_PROVIDER;\r
+import static com.enqualcomm.support.Constants.ACTION_CHECK_LOCATION_RESULT;\r
 import static com.enqualcomm.support.Constants.HEART_ALARM;\r
 \r
 public class LocationClient {\r
@@ -104,7 +105,7 @@ public class LocationClient {
 \r
   private LBSHelper mLbsHelper;\r
 \r
-  private ScheduledThreadPoolExecutor mTimer=null;\r
+//  private ScheduledThreadPoolExecutor mTimer=null;\r
   \r
   private int mPedometer2;\r
   \r
@@ -266,17 +267,28 @@ public class LocationClient {
       checktimes=0;\r
       timeout=false;\r
       startCheckTime= System.currentTimeMillis();\r
+      needCheckAgain=true;\r
       //延时2秒执行发送“读取定位”消息\r
-      if (mTimer==null) mTimer=new ScheduledThreadPoolExecutor(2);\r
-      mTimer.scheduleAtFixedRate(new Runnable() {\r
-        @Override\r
-        public void run() {\r
-          waitAndSendLocation();\r
-          //mhandler.sendEmptyMessage(msgWhat_WaitAndSendLocation);\r
-        }\r
-      }, 1000L, 1000L,TimeUnit.MILLISECONDS);\r
-//    AlarmManager alarmManager=(AlarmManager)runtime.getContextProxy().context.getSystemService(Context.ALARM_SERVICE);\r
-//    AlarmHelper.setAlarm(alarmManager,0,1,);\r
+//      if (mTimer==null) {\r
+//        mTimer = new ScheduledThreadPoolExecutor(1);\r
+//      }\r
+\r
+      ICLogger.i("startCheckResult " );\r
+\r
+//      mTimer.scheduleAtFixedRate(new Runnable() {\r
+//        @Override\r
+//        public void run() {\r
+//          try {\r
+//            waitAndSendLocation();\r
+//          }catch (Exception e){\r
+//            e.printStackTrace();\r
+//          }\r
+//          //mhandler.sendEmptyMessage(msgWhat_WaitAndSendLocation);\r
+//        }\r
+//      }, 1000L, 1000L,TimeUnit.MILLISECONDS);\r
+\r
+    AlarmHelper.setRealTimeAlarmInSeconds(runtime.getContextProxy().context,1,ACTION_CHECK_LOCATION_RESULT);\r
+\r
   }\r
 \r
 \r
@@ -305,6 +317,7 @@ public class LocationClient {
 \r
   boolean wifi_ok=false,gps_ok=false,lbs_ok=false,gps_nosignal=false;\r
 \r
+  private static boolean needCheckAgain=false;\r
   public void waitAndSendLocation(){\r
 \r
         long timeCost=0L;\r
@@ -447,17 +460,47 @@ public class LocationClient {
             break;\r
         }\r
 \r
+        if(needCheckAgain)\r
+          AlarmHelper.setRealTimeAlarmInSeconds(runtime.getContextProxy().context,1,ACTION_CHECK_LOCATION_RESULT);\r
   }\r
 \r
   public void stopCheckLocationResult(){\r
     ICLogger.i("stopCheckLocationResult!");\r
-    if (mTimer!=null){\r
-      mTimer.shutdown();\r
-      mTimer.purge();\r
-      mTimer=null;\r
-    }\r
+//    if (mTimer!=null){\r
+//      mTimer.shutdownNow();\r
+//      Runnable tmp= mTimer.getQueue().poll();\r
+//      while (tmp!=null){\r
+//        mTimer.remove(tmp);\r
+//      }\r
+//      mTimer.setContinueExistingPeriodicTasksAfterShutdownPolicy(true);\r
+//      mTimer.setExecuteExistingDelayedTasksAfterShutdownPolicy(false);\r
+//      mTimer.setRemoveOnCancelPolicy(true);\r
+//      ICLogger.i("Wait for thread pool getContinueExistingPeriodicTasksAfterShutdownPolicy " +mTimer.getContinueExistingPeriodicTasksAfterShutdownPolicy()+\r
+//              "\ngetExecuteExistingDelayedTasksAfterShutdownPolicy "+mTimer.getExecuteExistingDelayedTasksAfterShutdownPolicy()+\r
+//              "\ngetRemoveOnCancelPolicy "+mTimer.getRemoveOnCancelPolicy());\r
+//      while(!mTimer.isTerminated())\r
+//      {\r
+//      StringBuilder sb=new StringBuilder();\r
+//        if (mTimer.isTerminated()) sb.append("+");\r
+//        if (mTimer.isShutdown()) sb.append("*");\r
+//        if (mTimer.isTerminating()) sb.append("-");\r
+//        ICLogger.i(sb.toString());\r
+//\r
+//        try {\r
+//          Thread.sleep(500);\r
+//        } catch (InterruptedException e) {\r
+//          e.printStackTrace();\r
+//        }\r
+//      }\r
+//      mTimer.purge();\r
+//      mTimer=null;\r
+//    }\r
+\r
+    needCheckAgain=false;\r
     isLocating = false;\r
     startCheckTime=0L;\r
+\r
+//    ICLogger.i(" stopCheckLocationResult Done ");\r
   }\r
 \r
 //  public void EqcAlgorithmInterfaceMethod3() {\r
@@ -616,7 +659,7 @@ public void updateCellInfo() {
     @Override\r
     public void onReceive(Context context, Intent intent) {\r
       String action = intent.getAction();\r
-      if (ACTION_GPSCMD.equals(action)) {\r
+      if (ACTION_GPSCMD.equals(action)) { //此消息来自工厂测试工具,测试GPS时会发送。\r
         String status = intent.getStringExtra("status");\r
         if( status.equals("needReopen")){\r
           runtime.setFactoryTestingStat(true);\r
index b61ec78..e278641 100644 (file)
@@ -129,7 +129,16 @@ public class MainActivity extends AppCompatActivity {
     protected void onPause() {
         super.onPause();
         if (timer!=null) {
-            timer.shutdown();
+            timer.shutdownNow();
+//            while(!timer.isTerminated())
+//            {
+//                ICLogger.i("Wait for thread pool terminated");
+//                try {
+//                    Thread.sleep(500);
+//                } catch (InterruptedException e) {
+//                    e.printStackTrace();
+//                }
+//            }
             timer.purge();
             timer = null;
         }
index 2bde14d..b3842f4 100644 (file)
@@ -381,6 +381,39 @@ public class protocolAPIHelper {
 \r
 \r
 \r
+    /*LBS+WiFi混合定位*/\r
+    public static String AP02(Runtime ds) {\r
+        //示例数据:IWAP02,\r
+        // zh_cn,\r
+        // 0,\r
+        // 7,\r
+        // 460,0,\r
+        // 9520|3671|13,9520|3672|12,9520|3673|11,9520|3674|10,9520|3675|9,9520|3676|8,9520|3677|7,\r
+        // 4,\r
+        // 1|D8-24-BD-79-FA-1F|59&2|3C-46-D8-6D-CE-01|81&3|0C-4C-39-1A-7C-65|69&4|70-A8-E3-5D-D7-C0|65#\r
+//        IW标识符\r
+//        AP02:命令字\r
+//        zh_cn: 语言标志\r
+//        0:回复标识,为0时不回复地址,为 1 时,服务器回复地址信息\r
+//        7: 表示共有7组基站\r
+//        460: MCC 国家码\r
+//        0: MNC运营商代码\r
+//        9520|3671|10: LAC|CID|dbm表示一组基站信息,后面数量需和基站组数地应  10:dbm为信号强度多基站信号强度建议从高到低排列后上传,信号强度转正数:150 – abs(dbm)\r
+//        4: 表示WIFI组数,\r
+//                1|D8-24-BD-79-FA-1F|59: ssid|mac地址|信号强度,信号强度转正数:150 – abs(信号强度)\r
+        return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP02)).append(TimeUtil.getShortDate())\r
+                .append(ds.getGPSData()).append(TimeUtil.getShortTime()).append(ds.getGPSHeading()).append(String.format("%03d",abs(ds.getSignalStrength())))\r
+                .append(ds.getGPSLocationStarNums()).append(ds.getBattery()).append("0")\r
+                .append(ds.getProtection()).append(ds.getWorkModeStr()).append(CMDSPLIT)\r
+                .append(ds.getLBSData()).append(CMDSPLIT).append(ds.getWifiInfo()).append(CMDEND).toString();\r
+    }\r
+\r
+    //处理 定位 BP01\r
+    public void handleBP02(String cmd){\r
+        log("BP02定位接收成功");\r
+    }\r
+\r
+\r
 \r
     public static String APXL(String id){\r
 //设备响应:      IWAPXL,080835#\r
index 43a8dfc..c6d820b 100644 (file)
@@ -35,7 +35,7 @@ public class Runtime {
   \r
   public String cellidByAt;\r
   \r
-  public String cellinfo;\r
+  private String cellinfo;\r
   \r
   private String cid = "";\r
   \r
index b3a1881..2e1387f 100644 (file)
@@ -227,7 +227,9 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
       ICJniUtils.enablePPG();\r
       getPPGWakeLock();\r
 \r
-      timerPPG = new ScheduledThreadPoolExecutor(2);\r
+\r
+      if (timerPPG==null)\r
+          timerPPG = new ScheduledThreadPoolExecutor(2);\r
       timerPPG.scheduleAtFixedRate(new Runnable() {\r
         @Override\r
         public void run() {\r
@@ -241,7 +243,7 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
   public void stopPPG(){\r
     if( isTimerStarted )\r
     {\r
-      timerPPG.shutdown();\r
+      timerPPG.shutdownNow();\r
       timerPPG.purge();\r
       isTimerStarted=false;\r
     }\r
index e44d176..5e5984c 100644 (file)
@@ -76,7 +76,7 @@ public class KeepAlive extends AbstractConnectionService {
     if (SimSignalUtil.checkNet(mRuntime.getContextProxy().context) ) {\r
       stopResponseCheckTimer();\r
       if (scheduled == null) {\r
-        scheduled = new ScheduledThreadPoolExecutor(2);\r
+        scheduled = new ScheduledThreadPoolExecutor(10);\r
       }\r
       //开始检测重新计数\r
       hearBeatResendCount=0;\r
@@ -94,7 +94,6 @@ public class KeepAlive extends AbstractConnectionService {
 \r
     if (SimSignalUtil.checkNet(mRuntime.getContextProxy().context) ) {\r
 \r
-\r
       //如果收到服务器响应BP03,则停止重试,否则 继续发送AP03 心跳包,且继续检查响应\r
       if (this.is_heartBeat_send_success ) {\r
         ICLogger.i("checkSrvResponse 成功,停止检测!");\r
@@ -127,10 +126,35 @@ public class KeepAlive extends AbstractConnectionService {
 \r
   public void stopResponseCheckTimer(){\r
     if (scheduled !=null){\r
-      scheduled.shutdown();\r
+      scheduled.shutdownNow();\r
+//      Runnable tmp= scheduled.getQueue().poll();\r
+//      while (tmp!=null){\r
+//        scheduled.remove(tmp);\r
+//      }\r
+      scheduled.setContinueExistingPeriodicTasksAfterShutdownPolicy(true);\r
+      scheduled.setExecuteExistingDelayedTasksAfterShutdownPolicy(false);\r
+      scheduled.setRemoveOnCancelPolicy(true);\r
+      ICLogger.i("Wait for thread pool getContinueExistingPeriodicTasksAfterShutdownPolicy " +scheduled.getContinueExistingPeriodicTasksAfterShutdownPolicy()+\r
+              "\ngetExecuteExistingDelayedTasksAfterShutdownPolicy "+scheduled.getExecuteExistingDelayedTasksAfterShutdownPolicy()+\r
+              "\ngetRemoveOnCancelPolicy "+scheduled.getRemoveOnCancelPolicy());\r
+//      while(!scheduled.isTerminated())\r
+//      {\r
+//        StringBuilder sb=new StringBuilder();\r
+//        if (scheduled.isTerminated()) sb.append("+");\r
+//        if (scheduled.isShutdown()) sb.append("*");\r
+//        if (scheduled.isTerminating()) sb.append("-");\r
+//        ICLogger.i(sb.toString());\r
+//        try {\r
+//          Thread.sleep(500);\r
+//        } catch (InterruptedException e) {\r
+//          e.printStackTrace();\r
+//        }\r
+//      }\r
       scheduled.purge();\r
       scheduled = null;\r
     }\r
+\r
+    ICLogger.i(" stopResponseCheckTimer Done ");\r
   }\r
 \r
 \r
index fe70d79..ac609ce 100644 (file)
@@ -40,6 +40,8 @@ import static android.telephony.TelephonyManager.CALL_STATE_OFFHOOK;
 import static android.telephony.TelephonyManager.CALL_STATE_RINGING;\r
 import static com.enqualcomm.support.Constants.ACTION_CARE_ALARM;\r
 import static com.enqualcomm.support.Constants.ACTION_HEATR_RATE_START;\r
+import static com.enqualcomm.support.Constants.SERVICE_CLS_NAME;\r
+import static com.enqualcomm.support.Constants.SERVICE_PKG_NAME;\r
 \r
 public class SilentManager extends AbstractInvokeHandlerService {\r
   private static final long ONE_WEEK = 604800000L;\r
@@ -278,7 +280,7 @@ public class SilentManager extends AbstractInvokeHandlerService {
       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
+      ComponentName var4 = new ComponentName(SERVICE_PKG_NAME, SERVICE_CLS_NAME);\r
       Intent var5 = (new Intent("com.enqualcomm.support.ACTION_VIDEO_END_CALL")).setComponent(var4);\r
       this.mRuntime.getContextProxy().context.startService(var5);\r
     }\r
index 7a1fca7..da1dcf7 100644 (file)
@@ -82,14 +82,6 @@ public class AlarmHelper {
     PendingIntent pendingIntent = PendingIntent.getService(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);\r
     alarmManager.cancel(pendingIntent);\r
     long l = SystemClock.elapsedRealtime();\r
-    StringBuilder stringBuilder = new StringBuilder();\r
-    stringBuilder.append("SDK_INT=");\r
-    stringBuilder.append(Build.VERSION.SDK_INT);\r
-    stringBuilder.append(",m=,");\r
-    stringBuilder.append(23);\r
-    stringBuilder.append(",kitkat=");\r
-    stringBuilder.append(19);\r
-    ICLogger.i(stringBuilder.toString());\r
     if (Build.VERSION.SDK_INT >= 19) {\r
       alarmManager.setExact(AlarmManager.ELAPSED_REALTIME_WAKEUP, l + (minutes * 60 * 1000), pendingIntent);\r
       return;\r
@@ -104,14 +96,6 @@ public class AlarmHelper {
     PendingIntent pendingIntent = PendingIntent.getService(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);\r
     alarmManager.cancel(pendingIntent);\r
     long l = SystemClock.elapsedRealtime();\r
-    StringBuilder stringBuilder = new StringBuilder();\r
-    stringBuilder.append("SDK_INT=");\r
-    stringBuilder.append(Build.VERSION.SDK_INT);\r
-    stringBuilder.append(",m=,");\r
-    stringBuilder.append(23);\r
-    stringBuilder.append(",kitkat=");\r
-    stringBuilder.append(19);\r
-    ICLogger.i(stringBuilder.toString());\r
     if (Build.VERSION.SDK_INT >= 19) {\r
       alarmManager.setExact(AlarmManager.ELAPSED_REALTIME_WAKEUP, l + (seconds  * 1000), pendingIntent);\r
       return;\r
index 0a5f6ab..da199c4 100644 (file)
@@ -12,6 +12,9 @@ import com.enqualcomm.support.bean.Contact;
 import com.enqualcomm.support.bean.Runtime;\r
 import com.enqualcomm.support.CoreService;\r
 \r
+import static com.enqualcomm.support.Constants.SERVICE_CLS_NAME;\r
+import static com.enqualcomm.support.Constants.SERVICE_PKG_NAME;\r
+\r
 public class AlarmWakeUp {\r
   private static long lastAlarmTime;\r
   \r
@@ -20,7 +23,7 @@ public class AlarmWakeUp {
 //    int i = Config.getAlarmCycle(runtime.getContextProxy().context);\r
     int i = Config.getLocationCycle(runtime.getContextProxy().context);\r
     if (l - lastAlarmTime > ((i + 1) * 60 * 1000)) { //达到cycle时间则唤醒CoreService并发送定位消息\r
-      ComponentName componentName = new ComponentName("com.enqualcomm.support", "com.enqualcomm.support.CoreService");\r
+      ComponentName componentName = new ComponentName(SERVICE_PKG_NAME, SERVICE_CLS_NAME);\r
 //      Intent intent = (new Intent(CoreService.ACTION_ALARM)).setComponent(componentName);\r
       Intent intent = (new Intent(Constants.ACTION_LOCATION_ALARM)).setComponent(componentName);\r
       (runtime.getContextProxy()).context.startService(intent);\r
index 35f9571..67e6513 100644 (file)
@@ -95,19 +95,20 @@ public class CellInfoUtil {
                   int j = Integer.parseInt(arrayOfString1[1]);\r
                   int k = Integer.parseInt(arrayOfString1[2]);\r
                   CellInfoUtil.BSSS = Integer.parseInt(arrayOfString1[5]);\r
-//                EqcAlgorithmNative.native_EqcAlgorithmMethod4(3, j, CellInfoUtil.BSSS, CellInfoUtil.MCC, CellInfoUtil.MNC, i, k);\r
+\r
                   CellInfoUtil.releaseWakeLock(mWakeLock);\r
                 } else {\r
-                  String[] arrayOfString = mCellInfo.split("\\+")[0].split("@");\r
-                  CellInfoUtil.MCC = Integer.parseInt(arrayOfString[0]);\r
-                  CellInfoUtil.MNC = Integer.parseInt(arrayOfString[1]);\r
-                  CellInfoUtil.LAC = Integer.parseInt(arrayOfString[2]);\r
-                  CellInfoUtil.CELL_ID = Integer.parseInt(arrayOfString[3]);\r
-                  CellInfoUtil.BSSS = Integer.parseInt(arrayOfString[4]);\r
-//                CellInfoUtil.access$002(2);\r
-                  CellInfoUtil.IS2SECOND = 2;\r
-//                EqcAlgorithmNative.native_EqcAlgorithmMethod4(0, 0, CellInfoUtil.BSSS, CellInfoUtil.MCC, CellInfoUtil.MNC, CellInfoUtil.LAC, CellInfoUtil.CELL_ID);\r
-                  mRuntime.cellinfo = mCellInfo;\r
+\r
+                  String[] stationlist = mCellInfo.split("\\+");\r
+                  if (stationlist.length>0 ) {\r
+                    String[] arrayOfString = stationlist[0].split("@");\r
+                    CellInfoUtil.MCC = Integer.parseInt(arrayOfString[0]);\r
+                    CellInfoUtil.MNC = Integer.parseInt(arrayOfString[1]);\r
+                    CellInfoUtil.LAC = Integer.parseInt(arrayOfString[2]);\r
+                    CellInfoUtil.CELL_ID = Integer.parseInt(arrayOfString[3]);\r
+                    CellInfoUtil.BSSS = Integer.parseInt(arrayOfString[4]);\r
+                    CellInfoUtil.IS2SECOND = 2;\r
+                  }\r
                 }\r
                 if (Config.LOG_TOFILE)ICLogger.logToFile("LBS", mCellInfo);\r
                 CellInfoUtil.releaseWakeLock(mWakeLock);\r
@@ -133,9 +134,11 @@ public class CellInfoUtil {
                 stringBuilder.append(CellInfoUtil.CELL_ID);\r
                 stringBuilder.append("@");\r
                 stringBuilder.append(CellInfoUtil.BSSS);\r
-                runtime.cellinfo = stringBuilder.toString();\r
+\r
+                runtime.setCurrentCellInfo(stringBuilder.toString());\r
+\r
 //              EqcAlgorithmNative.native_EqcAlgorithmMethod4(1, 0, CellInfoUtil.BSSS, CellInfoUtil.MCC, CellInfoUtil.MNC, CellInfoUtil.LAC, CellInfoUtil.CELL_ID);\r
-                if (Config.LOG_TOFILE) ICLogger.logToFile("LBS", mRuntime.cellinfo);\r
+                if (Config.LOG_TOFILE) ICLogger.logToFile("LBS", mRuntime.getCurrentCellInfo());\r
 \r
                 CellInfoUtil.releaseWakeLock(mWakeLock);\r
                 ICLogger.i(" setCurrentAttachCellInfo " + mCellInfo);\r
index c7b2868..69d4d43 100644 (file)
@@ -1,2 +1,2 @@
-#Wed Apr 08 22:25:32 CST 2020\r
-VERSION_CODE=396\r
+#Fri Apr 10 11:16:37 CST 2020\r
+VERSION_CODE=397\r