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