From 118fc07c2a535db723697a43c3330ad7ef49bbf8 Mon Sep 17 00:00:00 2001 From: lizhanwei <Dana_Lee1016@126.com> Date: 星期五, 10 一月 2020 11:20:17 +0800 Subject: [PATCH] 1.收到需要推送rtk配置信息后,在activity里面发送;2.rtk配置信息表 注册装填改为0未注册;3.在联网考试和单车训练界面主动触发推送rtk配置信息 --- app/src/main/java/safeluck/drive/evaluation/Constant.java | 4 + app/src/main/java/safeluck/drive/evaluation/app.java | 37 +++--------------- app/src/main/java/safeluck/drive/evaluation/MainActivity.java | 54 ++++++++++++++++++++++++++- app/src/main/assets/rtk_config.json | 2 app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | 10 ++++ app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java | 8 +++ 6 files changed, 78 insertions(+), 37 deletions(-) diff --git a/app/src/main/assets/rtk_config.json b/app/src/main/assets/rtk_config.json index 92c9e6b..4b05563 100644 --- a/app/src/main/assets/rtk_config.json +++ b/app/src/main/assets/rtk_config.json @@ -9,7 +9,7 @@ "imei":"460123874561", "phone":"2019101500000001", "password":"123456789", - "registered":1, + "registered":0, "interval":1 } diff --git a/app/src/main/java/safeluck/drive/evaluation/Constant.java b/app/src/main/java/safeluck/drive/evaluation/Constant.java index 2993eb3..b54bbc3 100644 --- a/app/src/main/java/safeluck/drive/evaluation/Constant.java +++ b/app/src/main/java/safeluck/drive/evaluation/Constant.java @@ -45,11 +45,13 @@ public static final int JUDGE_INFO = 0x000c; public static final String RTK_CONFIG_JSON = "rtk_config.json"; - public static final String BIND_DRIVING_TOPIC = "driving"; + public static final String BIND_DRIVING_TOPIC = "driving_topic"; public static final long TEST_STU_ID = 1001; //I绫昏瘎鍒よ〃 public static final int SUBJECT_I = 1; public static final String MAP = "map.json"; public static final String VEHICLE = "vehiclemodel.json"; + public static final String BIND_RTKCONFIG_TOPIC = "rtkconfig_topic"; + } diff --git a/app/src/main/java/safeluck/drive/evaluation/MainActivity.java b/app/src/main/java/safeluck/drive/evaluation/MainActivity.java index 98a0b6e..282cd33 100644 --- a/app/src/main/java/safeluck/drive/evaluation/MainActivity.java +++ b/app/src/main/java/safeluck/drive/evaluation/MainActivity.java @@ -19,8 +19,18 @@ import me.yokeyword.fragmentation.SupportActivity; import safeluck.drive.evaluation.DB.Student; import safeluck.drive.evaluation.DB.WokViewModel; +import safeluck.drive.evaluation.DB.rtktb.RTKConfig; +import safeluck.drive.evaluation.DB.rtktb.RTKConfigViewModel; +import safeluck.drive.evaluation.cEventCenter.CEventCenter; +import safeluck.drive.evaluation.cEventCenter.ICEventListener; import safeluck.drive.evaluation.fragment.HomeFragment; + +import com.anyun.exam.lib.AYSdk; import com.anyun.exam.lib.MyLog; +import com.google.gson.Gson; + +import org.json.JSONException; +import org.json.JSONObject; import java.util.List; @@ -32,8 +42,37 @@ private static final int PERMISSIONS_REQUEST_CODE = 1001; private String TAG = MainActivity.class.getCanonicalName(); - private PermissionManager mPermissionsManager ; + private PermissionManager mPermissionsManager; + private RTKConfig mRTKConfig;//RTK閰嶇疆淇℃伅 + private Gson gson = new Gson(); String[] PERMISSIONS = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.CAMERA}; + + + private ICEventListener icEventListener = new ICEventListener() { + @Override + public void onCEvent(String topic, int msgCode, int resultCode, Object obj) { + if (msgCode == Constant.FETCH_RTK_PLATFORM_INFO){ + if (mRTKConfig != null){ + String rtkjson = gson.toJson(mRTKConfig); + + //鍘婚櫎id瀛楁 + JSONObject jsonObject = null; + try { + jsonObject = new JSONObject(rtkjson); + } catch (JSONException e) { + e.printStackTrace(); + } + jsonObject.remove("_id"); + rtkjson = null; + rtkjson = jsonObject.toString(); + MyLog.i(TAG, "RTK閰嶇疆淇℃伅锛�" + rtkjson); + AYSdk.getInstance().sendCmd(Constant.PUSH_RTK_PLATFORM_INFO, rtkjson); + }else{ + MyLog.d(TAG,"RTKConfig鏈彇鍒版暟鎹�"); + } + } + } + }; @Override protected void onCreate(Bundle savedInstanceState) { @@ -53,7 +92,14 @@ } }); - + RTKConfigViewModel rtkConfigViewModel= ViewModelProviders.of(this).get(RTKConfigViewModel.class); + rtkConfigViewModel.getRTKConfig().observe(this, new Observer<RTKConfig>() { + @Override + public void onChanged(RTKConfig rtkConfig) { + MyLog.i(TAG, "RTKConfig Changed: "+rtkConfig.toString()); + mRTKConfig = rtkConfig; + } + }); mPermissionsManager = new PermissionManager(this) { @@ -100,11 +146,15 @@ if (findFragment(HomeFragment.class) == null){ loadRootFragment(R.id.fl_container,HomeFragment.newInstance()); } + + CEventCenter.onBindEvent(true,icEventListener,Constant.BIND_RTKCONFIG_TOPIC); + } @Override protected void onDestroy() { super.onDestroy(); + CEventCenter.onBindEvent(false,icEventListener,Constant.BIND_RTKCONFIG_TOPIC); Log.i(TAG, "onDestroy: "); } diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java index 3e7a830..a2b63fc 100644 --- a/app/src/main/java/safeluck/drive/evaluation/app.java +++ b/app/src/main/java/safeluck/drive/evaluation/app.java @@ -31,6 +31,8 @@ import safeluck.drive.evaluation.DB.failitems.FailedProjRepository; import safeluck.drive.evaluation.DB.rtktb.RTKConfig; import safeluck.drive.evaluation.DB.rtktb.RTKWorkRepository; +import safeluck.drive.evaluation.cEventCenter.CEvent; +import safeluck.drive.evaluation.cEventCenter.CEventCenter; import safeluck.drive.evaluation.util.FileUtil; import safeluck.drive.evaluation.util.SystemUtil; @@ -71,7 +73,7 @@ Stetho.initializeWithDefaults(this); - + //鏁版嵁搴撴搷浣� MyLog.i(TAG, "onCreate111"); failedProjRepository = new FailedProjRepository(this); @@ -101,8 +103,7 @@ break; case Constant.RTK_PLATFORM_REGISTER_STATUS: - - failedProjRepository.insert(new FailedProj(Constant.SUBJECT_I, cmd + random.nextInt(26), Constant.TEST_STU_ID)); + //RTK骞冲彴娉ㄥ唽鐘舵�侊紝闇�瑕佷繚瀛樻暟鎹簱 rtkConfig = rtkWorkRepository.getRTKConfigNoLive(); try { @@ -118,11 +119,10 @@ break; case Constant.RTK_PLATFORM_REGISTER_RESULT: - + //RTK骞冲彴鐧诲綍缁撴灉 try { JSONObject jsonObject = new JSONObject(json); int rtklogincode = jsonObject.getInt("login_code"); - rtkConfig.setRegistered(rtklogincode); } catch (JSONException e) { e.printStackTrace(); } @@ -130,32 +130,7 @@ break; case Constant.FETCH_RTK_PLATFORM_INFO: - rtkConfig = rtkWorkRepository.getRTKConfigNoLive(); - if (gson == null) { - gson = new Gson(); - } - if (rtkConfig==null){ - - rtkConfig = rtkWorkRepository.getRTKConfigNoLive(); - } - if (rtkConfig != null){ - String rtkjson = gson.toJson(rtkConfig); - MyLog.i(TAG, "RTK閰嶇疆淇℃伅锛�" + rtkjson); - - //鍘婚櫎id瀛楁 - JSONObject jsonObject = null; - try { - jsonObject = new JSONObject(rtkjson); - } catch (JSONException e) { - e.printStackTrace(); - } - jsonObject.remove("_id"); - rtkjson = null; - rtkjson = jsonObject.toString(); - MyLog.i(TAG, "RTK閰嶇疆淇℃伅锛�" + rtkjson); - AYSdk.getInstance().sendCmd(Constant.PUSH_RTK_PLATFORM_INFO, rtkjson); - } - + CEventCenter.dispatchEvent(Constant.BIND_RTKCONFIG_TOPIC,cmd,0,""); break; case Constant.JUDGE_INFO: diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java index 9c1603d..f1efb47 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java @@ -17,6 +17,7 @@ import androidx.lifecycle.ViewModelProviders; import com.anyun.exam.lib.AYSdk; +import com.anyun.exam.lib.MyLog; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; @@ -35,6 +36,7 @@ import safeluck.drive.evaluation.R; import safeluck.drive.evaluation.adapter.ScoreAdapter; import safeluck.drive.evaluation.bean.ScoreBean; +import safeluck.drive.evaluation.cEventCenter.CEventCenter; /** * 鑱旂綉璁粌UI @@ -85,6 +87,7 @@ } private void initView(View view) { + sendRTKConfig2RemoteService(); mListView = view.findViewById(R.id.lv); mListView.setFocusable(false); view.findViewById(R.id.view_map).setOnClickListener(this); @@ -96,7 +99,10 @@ mListView.addHeaderView(LayoutInflater.from(_mActivity).inflate(R.layout.layout_score_item,null)); } - + private void sendRTKConfig2RemoteService() { + MyLog.d(TAG,"涓诲姩鎺ㄩ�丷TKConfig"); + CEventCenter.dispatchEvent(Constant.BIND_RTKCONFIG_TOPIC,Constant.PUSH_RTK_PLATFORM_INFO,0,""); + } @Override public void onClick(View v) { switch (v.getId()){ diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java index 4733a3a..127c355 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java @@ -16,6 +16,8 @@ import android.widget.ListView; import android.widget.Toast; +import com.anyun.exam.lib.MyLog; + import java.util.ArrayList; import java.util.EventListener; import java.util.List; @@ -99,7 +101,7 @@ return view; } private void initView(View view) { - + sendRTKConfig2RemoteService(); mListView = view.findViewById(R.id.lv); mListView.setFocusable(false);//listview涓嶈幏鍙栫劍鐐癸紝涓嶇劧鐨勮瘽scrollview浼氶《鍒板簳閮� view.findViewById(R.id.view_map).setOnClickListener(this); @@ -112,6 +114,12 @@ mListView.addHeaderView(LayoutInflater.from(_mActivity).inflate(R.layout.layout_score_item,null)); + + } + + private void sendRTKConfig2RemoteService() { + MyLog.d(TAG,"涓诲姩鎺ㄩ�丷TKConfig"); + CEventCenter.dispatchEvent(Constant.BIND_RTKCONFIG_TOPIC,Constant.PUSH_RTK_PLATFORM_INFO,0,""); } @Override -- Gitblit v1.8.0