From a88912d08d28159bc464f715704a0d08be6edad8 Mon Sep 17 00:00:00 2001 From: lizhanwei <Dana_Lee1016@126.com> Date: 星期二, 31 三月 2020 13:38:26 +0800 Subject: [PATCH] 系统设置增加路考地图选择 --- app/src/main/java/safeluck/drive/evaluation/app.java | 49 ++++++++++++---- app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java | 20 ++++++ app/src/main/java/safeluck/drive/evaluation/util/SPUtils.java | 1 app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt | 31 ++++++++-- app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java | 29 +++++++++ app/src/main/res/drawable/btn_state_save.xml | 5 + app/src/main/res/layout/layout_base_datas.xml | 11 +++ 7 files changed, 122 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt b/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt index ecc25a2..798da34 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt +++ b/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt @@ -175,6 +175,30 @@ private fun sendMapInfo(){ val mapPath = ExamPlatformData.getInstance().mapPath + val roadmapPath = ExamPlatformData.getInstance().roadMapPath + + if (!TextUtils.isEmpty(roadmapPath)) { + MyLog.i("璋冪敤鏇存柊RoadMap璺緞鍚庣殑鍦板浘$roadmapPath") + val fileContent = FileUtil.readFile(roadmapPath) + if (fileContent != null) { + val str = String(fileContent) + Log.i(TAG,"鏂囦欢鍐呭锛�$str") + AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.PUSH_ROAD_MAP_INFO, str) + } else { + MyLog.i(String.format("鏂囦欢:%s涓嶅瓨鍦�", roadmapPath)) + CThreadPoolExecutor.runOnMainThread { Toast.makeText(app.getAppContext(), "鏂囦欢锛�" + roadmapPath + "涓嶅瓨鍦�", Toast.LENGTH_SHORT).show() } + } + } else { + val buffer: StringBuffer? + buffer = FileUtil.readAssetTxtFile(applicationContext, safeluck.drive.evaluation.Constant.ROAD_MAP) + if (buffer != null) { + AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.PUSH_ROAD_MAP_INFO, buffer.toString()) + } else { + MyLog.i(String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().absolutePath + "/" + applicationContext.packageName)) + CThreadPoolExecutor.runOnMainThread { Toast.makeText(app.getAppContext(), String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().absolutePath + "/" + applicationContext.packageName), Toast.LENGTH_SHORT).show() } + } + } + if (!TextUtils.isEmpty(mapPath)) { MyLog.i("璋冪敤鏇存柊Map璺緞鍚庣殑鍦板浘$mapPath") val fileContent = FileUtil.readFile(mapPath) @@ -189,13 +213,6 @@ } else { MyLog.i("璇诲彇Assert鐩綍涓嬪垵濮嬪寲鐨勫湴鍥�") var buffer: StringBuffer? - buffer = FileUtil.readAssetTxtFile(applicationContext, safeluck.drive.evaluation.Constant.ROAD_MAP) - if (buffer != null) { - AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.PUSH_ROAD_MAP_INFO, buffer.toString()) - } else { - MyLog.i( String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().absolutePath + "/" + applicationContext.packageName)) - CThreadPoolExecutor.runOnMainThread { Toast.makeText(app.getAppContext(), String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().absolutePath + "/" + applicationContext.packageName), Toast.LENGTH_SHORT).show() } - } buffer = FileUtil.readAssetTxtFile(applicationContext, safeluck.drive.evaluation.Constant.MAP) if (buffer != null) { AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.PUSH_MAP_INFO, buffer.toString()) diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java index c4d2568..01c37fd 100644 --- a/app/src/main/java/safeluck/drive/evaluation/app.java +++ b/app/src/main/java/safeluck/drive/evaluation/app.java @@ -502,6 +502,42 @@ @Override public void run() { final String mapPath = ExamPlatformData.getInstance().getMapPath(); + final String roadmapPath = ExamPlatformData.getInstance().getRoadMapPath(); + + if (!TextUtils.isEmpty(roadmapPath)){ + MyLog.i("璋冪敤鏇存柊RoadMap璺緞鍚庣殑鍦板浘"+roadmapPath); + byte[] fileContent = FileUtil.readFile(roadmapPath); + if (fileContent != null){ + String str = new String(fileContent); + Log.i(TAG, "鏂囦欢鍐呭锛�"+str); + AYSdk.getInstance().sendCmd(Constant.PUSH_ROAD_MAP_INFO,str); + }else{ + MyLog.i(String.format("鏂囦欢:%s涓嶅瓨鍦�",roadmapPath)); + + CThreadPoolExecutor.runOnMainThread(new Runnable() { + @Override + public void run() { + Toast.makeText(getAppContext(), "鏂囦欢锛�"+roadmapPath+"涓嶅瓨鍦�", Toast.LENGTH_SHORT).show(); + } + }); + } + }else{ + StringBuffer buffer; + buffer =FileUtil.readAssetTxtFile(getApplicationContext(),Constant.ROAD_MAP); + if (buffer != null){ + + AYSdk.getInstance().sendCmd(Constant.PUSH_ROAD_MAP_INFO,buffer.toString()); + }else{ + MyLog.d(TAG,String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName())); + CThreadPoolExecutor.runOnMainThread(new Runnable() { + @Override + public void run() { + Toast.makeText(getAppContext(), String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName()), Toast.LENGTH_SHORT).show(); + } + }); + + } + } if (!TextUtils.isEmpty(mapPath)){ MyLog.i("璋冪敤鏇存柊Map璺緞鍚庣殑鍦板浘"+mapPath); byte[] fileContent = FileUtil.readFile(mapPath); @@ -528,20 +564,7 @@ } }); StringBuffer buffer; - buffer =FileUtil.readAssetTxtFile(getApplicationContext(),Constant.ROAD_MAP); - if (buffer != null){ - AYSdk.getInstance().sendCmd(Constant.PUSH_ROAD_MAP_INFO,buffer.toString()); - }else{ - MyLog.d(TAG,String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName())); - CThreadPoolExecutor.runOnMainThread(new Runnable() { - @Override - public void run() { - Toast.makeText(getAppContext(), String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName()), Toast.LENGTH_SHORT).show(); - } - }); - - } buffer =FileUtil.readAssetTxtFile(getApplicationContext(),Constant.MAP); if (buffer != null){ diff --git a/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java b/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java index 16bec68..02232d2 100644 --- a/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java +++ b/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java @@ -124,6 +124,7 @@ private String ip="47.93.80.84"; private int port=12125; private String mapPath;//缁濆璺緞鍖呭惈鏂囦欢鍚嶇殑path + private String roadmapPath;//缁濆璺緞鍖呭惈鏂囦欢鍚嶇殑path private String carPath;//缁濆璺緞鍖呭惈鏂囦欢鍚嶇殑path private StringBuffer stringBuffer; private int rtkPort = 12125; @@ -377,4 +378,23 @@ public void setExamType(int examType) { this.examType = examType; } + + /** + * 璁剧疆璺�冨湴鍥剧殑璺緞 + * @param path + */ + public void setNewRoadMapPath(String path) { + this.roadmapPath = path; + SPUtils.put(app.getAppContext(),SPUtils.ROAD_MAP_PATH,roadmapPath); + } + + /** + * 鑾峰緱璺�冨湴鍥剧殑璺緞 + * @return + */ + public String getRoadMapPath(){ + roadmapPath = (String) SPUtils.get(app.getAppContext(),SPUtils.ROAD_MAP_PATH,""); + return roadmapPath; + } + } diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java index 9e6f492..04a064f 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java @@ -73,16 +73,16 @@ private static final String TAG = SetArgumentsFragment.class.getSimpleName(); private static final int REQUEST_CODE_MAP = 100; + private static final int REQUEST_CODE_ROADMAP = 102; private static final int REQUEST_CODE_CAR = 101; private int request_code = REQUEST_CODE_MAP; private Button btn_config_signal; - private Button btn_mcu_upgrade,btn_map_select; + private Button btn_mcu_upgrade,btn_map_select,btn_roadmap_select; private EditText et_ip,et_port,et_simulte_ip,et_simulate_port; private Gson gson = new Gson(); private EditText et_ip_rtk,et_port_rtk,et_city_id,et_city_province,et_phone; private RTKConfigViewModel rtkConfigViewModel; private RTKConfig mRtkConfig; - private Toolbar toolbar; private boolean needSendRtk = false; public static SetArgumentsFragment newInstance() { @@ -161,9 +161,11 @@ et_port.setText(ExamPlatformData.getInstance().getPlatformPort()+""); btn_mcu_upgrade = view.findViewById(R.id.btn_mcu_upgrade); btn_map_select = view.findViewById(R.id.btn_map_select); + btn_roadmap_select = view.findViewById(R.id.btn_roadmap_select); view.findViewById(R.id.btn_car_select).setOnClickListener(this); btn_mcu_upgrade.setOnClickListener(this); btn_map_select.setOnClickListener(this); + btn_roadmap_select.setOnClickListener(this); btn_config_signal = view.findViewById(R.id.btn_signal_conf); btn_config_signal.setOnClickListener(this); @@ -248,6 +250,10 @@ request_code = REQUEST_CODE_MAP; openFileMgr(); break; + case R.id.btn_roadmap_select: + request_code = REQUEST_CODE_ROADMAP; + openFileMgr(); + break; default: break; } @@ -306,6 +312,25 @@ } + }else if (REQUEST_CODE_ROADMAP == requestCode){ + if (data != null){ + final Uri uri= data.getData(); + Log.i(TAG, "onActivityResult: "+uri.getPath()); + ExamPlatformData.getInstance().setNewRoadMapPath(uri.getPath()); + CThreadPoolExecutor.runInBackground(new Runnable() { + @Override + public void run() { + byte[] fileContent = FileUtil.readFile(uri.getPath()); + if (fileContent != null){ + String str = new String(fileContent); + Log.i(TAG, "鏂囦欢鍐呭锛�"+str); + AYSdk.getInstance().sendCmd(Constant.PUSH_ROAD_MAP_INFO,str); + } + } + }); + } + + } } diff --git a/app/src/main/java/safeluck/drive/evaluation/util/SPUtils.java b/app/src/main/java/safeluck/drive/evaluation/util/SPUtils.java index b70bc26..7e8e818 100644 --- a/app/src/main/java/safeluck/drive/evaluation/util/SPUtils.java +++ b/app/src/main/java/safeluck/drive/evaluation/util/SPUtils.java @@ -22,6 +22,7 @@ public static final String CAR_PATH = "car_path"; public static final String TRAIN_MODE = "training_mode"; public static final String FAIL_PROJ_SNS = "failed_projs_sns"; + public static final String ROAD_MAP_PATH = "road_map_path"; /** * 淇濆瓨鏁版嵁鐨勬柟娉曪紝鎴戜滑闇�瑕佹嬁鍒颁繚瀛樻暟鎹殑鍏蜂綋绫诲瀷锛岀劧鍚庢牴鎹被鍨嬭皟鐢ㄤ笉鍚岀殑淇濆瓨鏂规硶 diff --git a/app/src/main/res/drawable/btn_state_save.xml b/app/src/main/res/drawable/btn_state_save.xml new file mode 100644 index 0000000..1b621a7 --- /dev/null +++ b/app/src/main/res/drawable/btn_state_save.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> +<item android:state_pressed="true" android:drawable="@drawable/ic_btn_fail"></item> +<item android:state_pressed="false" android:drawable="@drawable/ic_btn_daikao"></item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/layout/layout_base_datas.xml b/app/src/main/res/layout/layout_base_datas.xml index 4eb3f8f..0554463 100644 --- a/app/src/main/res/layout/layout_base_datas.xml +++ b/app/src/main/res/layout/layout_base_datas.xml @@ -333,7 +333,7 @@ android:background="@drawable/btn_bg_baseset"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="鑰冭瘯鍦板浘閫夋嫨" + android:text="鍦鸿�冨湴鍥鹃�夋嫨" android:padding="5dp" android:id="@+id/btn_map_select" android:layout_marginLeft="15dp" @@ -343,6 +343,13 @@ android:text="杞﹁締妯″瀷閫夋嫨" android:padding="5dp" android:id="@+id/btn_car_select" + android:layout_marginLeft="15dp" + android:background="@drawable/btn_bg_baseset"/> + <Button android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="璺�冨湴鍥鹃�夋嫨" + android:padding="5dp" + android:id="@+id/btn_roadmap_select" android:layout_marginLeft="15dp" android:background="@drawable/btn_bg_baseset"/> </TableRow> @@ -361,7 +368,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/btn_save_platform" - android:background="@drawable/ic_btn_fail" + android:background="@drawable/btn_state_save" android:text="淇濆瓨"/> </LinearLayout> <!-- </ScrollView>--> -- Gitblit v1.8.0