From c73a6318cb54e1bd16f6f1f2e432c2ed0ab4f594 Mon Sep 17 00:00:00 2001
From: endian11 <Dana_Lee1016@126.com>
Date: 星期一, 24 八月 2020 18:01:53 +0800
Subject: [PATCH] SharedPrefernce增加保存hashmap ;设置界面增加车辆模型、地图信息展示(名字、版本)和版本更新功能,点击之后进行http请求,请求完成后发送地图、车辆给移动站服务;设置界面信息展示增加TypeCount,展示地图简要信息
---
app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt | 166 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 163 insertions(+), 3 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt b/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
index 36b87e7..ca4620d 100644
--- a/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
+++ b/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
@@ -1,6 +1,10 @@
package safeluck.drive.evaluation.util
import android.content.Context
+import android.os.Environment
+import android.text.TextUtils
+import android.util.Log
+import android.widget.Toast
import androidx.work.Data
import androidx.work.ListenableWorker
import com.anyun.exam.lib.AYSdk
@@ -8,15 +12,24 @@
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
import com.google.gson.stream.JsonReader
+import okhttp3.ResponseBody
import org.json.JSONException
import org.json.JSONObject
+import retrofit2.Call
+import retrofit2.Callback
+import retrofit2.Response
import safeluck.drive.evaluation.Constant
import safeluck.drive.evaluation.DB.WorkRoomDataBase
import safeluck.drive.evaluation.DB.rtktb.RTKConfig
import safeluck.drive.evaluation.DB.signalConfigdb.SingalConfig
-import safeluck.drive.evaluation.bean.ExamPlatformData
-import safeluck.drive.evaluation.bean.SignalConfigRemote
-import safeluck.drive.evaluation.bean.SimulateNightBean
+import safeluck.drive.evaluation.app
+import safeluck.drive.evaluation.bean.*
+import safeluck.drive.evaluation.httpmodule.HttpCarRespBean
+import safeluck.drive.evaluation.httpmodule.HttpRequetBean
+import safeluck.drive.evaluation.httpmodule.HttpRoadMapRsp
+import safeluck.drive.evaluation.httpmodule.HttpYardRsp
+import safeluck.drive.evaluation.httpmodule.RetrofitCreator.Companion.getRestService
+import safeluck.drive.evaluation.platformMessage.PlatFormConstant
import safeluck.drive.evaluation.worker.MCUUpgradeWorker
import java.io.IOException
import java.io.InputStreamReader
@@ -205,3 +218,150 @@
}
return false
}
+
+
+
+
+ fun getMap(sn: String, type: String){
+ lateinit var jsonObject1 :JSONObject
+ lateinit var fileName :String
+ when(type){
+ "road" -> fileName = safeluck.drive.evaluation.Constant.ROAD_MAP
+ "yard" -> fileName = safeluck.drive.evaluation.Constant.MAP
+ else -> fileName = safeluck.drive.evaluation.Constant.VEHICLE
+ }
+ getRestService().getMapsAndVehicleModel(HttpRequetBean(sn, type)).enqueue(object : Callback<ResponseBody> {
+ override fun onFailure(call: Call<ResponseBody>, t: Throwable) {
+ MyLog.i(PlatFormConstant.HTTPTAG,t.localizedMessage)
+ }
+
+ override fun onResponse(call: Call<ResponseBody>, response: Response<ResponseBody>) {
+ var str: String = response.body()!!.string()
+ MyLog.i(PlatFormConstant.HTTPTAG,str)
+ jsonObject1 = JSONObject(str)
+ val result = jsonObject1!!.getBoolean("result")
+ if (result) {
+ var mapInfoHead: MapInfoHead = MapInfoHead("","", BaseDataUIBean.TYPE_.car)
+
+ when(type){
+ "road" ->{
+ mapInfoHead.type = BaseDataUIBean.TYPE_.road
+ val map = gson.fromJson<HttpRoadMapRsp>(str, HttpRoadMapRsp::class.java)
+ if (map.isResult) {
+ if (map.data != null) {
+ mapInfoHead.version = map.data.version
+
+ if (map.data.map_json.type.equals("road")) {
+ mapInfoHead.str = map.data.map_json.name
+ ExamPlatformData.getInstance().setNewRoadMapPath(Environment.getExternalStorageDirectory().absolutePath + "/"
+ + app.getAppContext().getPackageName() + "/" + fileName)
+ CThreadPoolExecutor.runInBackground(Runnable {
+ str = gson.toJson(map.data.map_json)
+ MyLog.i(PlatFormConstant.HTTPTAG,"绉戜笁閬撹矾鍦板浘淇濆瓨鎴愬姛")
+ FileUtil.writeTxtFileToSD(app.getAppContext(), fileName, str, "")
+// sendRoadMapInfo()
+ })
+ }
+
+
+ }
+
+
+ }}
+ "yard" ->{
+ mapInfoHead.type = BaseDataUIBean.TYPE_.yard
+ val yard = gson.fromJson<HttpYardRsp>(str,HttpYardRsp::class.java)
+ if (yard.isResult){
+ if (yard.data !=null){
+ mapInfoHead.version = yard.data.version
+ mapInfoHead.str = yard.data.map_json.name
+ ExamPlatformData.getInstance().setNewMapPath(Environment.getExternalStorageDirectory().absolutePath + "/"
+ + app.getAppContext().getPackageName() + "/"+fileName)
+ CThreadPoolExecutor.runInBackground(Runnable{
+ MyLog.i(PlatFormConstant.HTTPTAG,"绉戜笁鍦哄湴鍦板浘淇濆瓨鎴愬姛")
+ str = gson.toJson(yard.data.map_json)
+ FileUtil.writeTxtFileToSD(app.getAppContext(),fileName,str,"")
+ sendMapInfo()
+ })
+ }
+ }
+ }
+ else ->{
+ mapInfoHead.type = BaseDataUIBean.TYPE_.car
+ val car = gson.fromJson<HttpCarRespBean>(str,HttpCarRespBean::class.java)
+
+ if (car.isResult){
+ if (car.data !=null){
+ mapInfoHead.version = car.data.version
+ mapInfoHead.str = car.data.map_json.name
+ ExamPlatformData.getInstance().carModelPath = Environment.getExternalStorageDirectory().absolutePath + "/" +
+ app.getAppContext().getPackageName() + "/"+fileName
+
+// Log.i(TAG, "瑙f瀽涔嬪悗鐨勮溅妯″瀷=$str")
+ CThreadPoolExecutor.runInBackground(Runnable{
+ str = gson.toJson(car.data.map_json)
+ MyLog.i(PlatFormConstant.HTTPTAG,"杞﹁締妯″瀷淇濆瓨鎴愬姛")
+ FileUtil.writeTxtFileToSD(app.getAppContext(),fileName,str,"")
+ sendVehicleInfo()
+ })
+
+ }
+ }
+ }
+ }
+ ExamPlatformData.getInstance().setMapHeadInfo(mapInfoHead)
+ } else {
+// Toast.makeText(applicationContext, jsonObject1!!.getString("data"), Toast.LENGTH_SHORT).show()
+ }
+ }
+ })
+
+}
+
+private fun sendMapInfo(){
+ val mapPath = ExamPlatformData.getInstance().mapPath
+
+
+ if (!TextUtils.isEmpty(mapPath)) {
+ MyLog.i("鏇存柊Map鐨勫湴鍥�$mapPath")
+ val fileContent = FileUtil.readFile(mapPath)
+ if (fileContent != null) {
+ val str = String(fileContent)
+ AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.PUSH_MAP_INFO, str)
+ } else {
+ MyLog.i(String.format("鏂囦欢:%s涓嶅瓨鍦�", mapPath))
+ CThreadPoolExecutor.runOnMainThread { Toast.makeText(app.getAppContext(), "鏂囦欢锛�" + mapPath + "涓嶅瓨鍦�", Toast.LENGTH_SHORT).show() }
+ }
+ }
+}
+
+private fun sendVehicleInfo(){
+ val carPath = ExamPlatformData.getInstance().carModelPath
+ if (!TextUtils.isEmpty(carPath)) {
+ MyLog.i("鏇存柊鍚庣殑Car妯″瀷$carPath")
+ val bytes = FileUtil.readFile(carPath)
+ if (bytes != null) {
+ val str = String(bytes)
+ AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.PUSH_VECHILE_PROFILE, str)
+ } else {
+ MyLog.i(String.format("鏂囦欢:%s涓嶅瓨鍦�", carPath))
+ }
+ }
+}
+private fun sendRoadMapInfo(){
+ 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)
+ 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 {
+
+ }
+}
--
Gitblit v1.8.0