From 976d3d484b25ea184a5da6968d4ad18605e5aa86 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 23 一月 2024 16:19:20 +0800 Subject: [PATCH] 2024年01月23日16:19:09 --- app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java | 34 ++++++++++++++++ app/src/main/res/values-zh/strings.xml | 10 +++++ app/src/main/java/com/hdl/photovoltaic/codes/CustomCloudCode.java | 5 ++ app/src/main/res/values/strings.xml | 10 ++++- app/src/main/res/values-en/strings.xml | 9 ++++ app/src/main/java/com/hdl/photovoltaic/other/HdlOtaLogic.java | 20 +++++----- 6 files changed, 75 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/codes/CustomCloudCode.java b/app/src/main/java/com/hdl/photovoltaic/codes/CustomCloudCode.java index 8c0cdb1..0a41cfc 100644 --- a/app/src/main/java/com/hdl/photovoltaic/codes/CustomCloudCode.java +++ b/app/src/main/java/com/hdl/photovoltaic/codes/CustomCloudCode.java @@ -1,4 +1,9 @@ package com.hdl.photovoltaic.codes; +import com.hdl.photovoltaic.HDLApp; +import com.hdl.photovoltaic.R; + public class CustomCloudCode { + public final String data_null = HDLApp.getInstance().getString(R.string.message_alarm_data_null); + } diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java index 81e6ddc..cb44355 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java @@ -331,6 +331,34 @@ * @param filePath 鍏ㄨ矾寰� * @return 鏁版嵁 */ + public byte[] readFileByte1(String filePath) { + try { + if (!isBoolean(filePath)) { + return null; + } + File f = new File(filePath); + if (!f.exists()) { + return null; + } + FileInputStream fis = new FileInputStream(f); + byte[] bytes = FileUtils.readFileToByteArray(f);//杩欎釜鏂规硶涓嶅吋鐢╝ndroid 6.0 + fis.close(); + System.out.println("璇诲彇鏂囦欢鎴愬姛--->" + filePath); + return bytes; + } catch (Exception e1) { + System.out.println("璇诲彇鏂囦欢鏈夊紓甯�--->" + e1.getMessage()); + return null; + } + + } + + + /** + * 璇诲彇鏂囦欢 + * + * @param filePath 鍏ㄨ矾寰� + * @return 鏁版嵁 + */ public byte[] readFileByte(String filePath) { try { if (!isBoolean(filePath)) { @@ -341,7 +369,11 @@ return null; } FileInputStream fis = new FileInputStream(f); - byte[] bytes = FileUtils.readFileToByteArray(f); + BufferedInputStream bis = new BufferedInputStream(fis); + int fileLength = (int) f.length(); + byte[] bytes = new byte[fileLength]; + int len = bis.read(bytes); + bis.close(); fis.close(); System.out.println("璇诲彇鏂囦欢鎴愬姛--->" + filePath); return bytes; diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlOtaLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlOtaLogic.java index f08d9c1..4408849 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlOtaLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlOtaLogic.java @@ -17,6 +17,7 @@ import com.hdl.linkpm.sdk.ota.bean.DeviceFirmwareBean; import com.hdl.linkpm.sdk.ota.bean.GatewayDriverBean; import com.hdl.photovoltaic.HDLApp; +import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.internet.HttpClient; import com.hdl.photovoltaic.internet.HttpServer.MyNanoHttpServer; @@ -534,12 +535,12 @@ this.stopDownload = false; //-100:娌℃湁鏁版嵁;-101:娌℃湁md5绉橀挜;-102:md5绉橀挜涓嶅;-103:鏈夊紓甯�; if (zipData == null) { - this.eventBusPost(fileFullPath, driver, -100, "鎷変笉鍒颁簯绔崌绾ф枃浠舵暟鎹�"); + this.eventBusPost(fileFullPath, driver, -100, HDLApp.getInstance().getString(R.string.exception_unable_to_pull_up_the_cloud_upgrade_file_data)); HdlLogLogic.print("鎷変笉鍒颁簯绔崌绾ф枃浠舵暟鎹�(-100)", true); return false; } if (TextUtils.isEmpty(md5)) { - this.eventBusPost(fileFullPath, driver, -101, "鎷夸笉鍒颁簯绔笂鍗囩骇鏂囦欢md5绉橀挜"); + this.eventBusPost(fileFullPath, driver, -101, HDLApp.getInstance().getString(R.string.exception_failed_to_obtain_the_md5_key_of_the_upgrade_file_on_the_cloud)); HdlLogLogic.print("鎷夸笉鍒颁簯绔笂鍗囩骇鏂囦欢md5绉橀挜(-101)", true); return false; } @@ -553,7 +554,7 @@ is = zipData.byteStream(); long total = zipData.contentLength(); if (total == 0) { - this.eventBusPost(fileFullPath, driver, -102, "鎷変笉鍒颁簯绔崌绾ф枃浠舵暟鎹�"); + this.eventBusPost(fileFullPath, driver, -102, HDLApp.getInstance().getString(R.string.exception_unable_to_pull_up_the_cloud_upgrade_file_data)); HdlLogLogic.print("鎷変笉鍒颁簯绔崌绾ф枃浠舵暟鎹�(-102)", true); return false; } @@ -561,7 +562,7 @@ long sum = 0; while ((len = is.read(buf)) != -1) { if (this.stopDownload) { - this.eventBusPost(fileFullPath, driver, -108, "鐢ㄦ埛鍙栨秷涓嬭浇鍗囩骇鏂囦欢."); + this.eventBusPost(fileFullPath, driver, -108, HDLApp.getInstance().getString(R.string.exception_the_user_cancels_downloading_the_upgrade_file)); HdlLogLogic.print("鐢ㄦ埛鍙栨秷涓嬭浇鍗囩骇鏂囦欢(-108)", true); fos.flush(); fos.close(); @@ -583,27 +584,27 @@ fos.close(); is.close(); byte[] bytes = FileUtils.readFileToByteArray(file); - //涓嬭浇鏂囦欢闇�瑕佽В瀵嗕箣鍚庡啀杩涜md5鍘诲仛姣斿 + //todo 涓嬭浇鏂囦欢闇�瑕佽В瀵嗕箣鍚庡啀杩涜md5鍘诲仛姣斿 byte[] decrypt = AesUtils.decrypt(bytes); if (decrypt == null) { - this.eventBusPost(fileFullPath, driver, -105, "鍗囩骇鏂囦欢aes瑙e瘑澶辫触."); + this.eventBusPost(fileFullPath, driver, -105, HDLApp.getInstance().getString(R.string.exception_failed_to_decrypt_the_upgrade_aes_file)); HdlLogLogic.print("鍗囩骇鏂囦欢aes瑙e瘑澶辫触(-105)", true); return false; } String fileMD5 = Md5Utils.encodeMD5(decrypt); if (TextUtils.isEmpty(fileMD5)) { - this.eventBusPost(fileFullPath, driver, -106, "鍗囩骇鏂囦欢鐢熸垚md5澶辫触澶辫触."); + this.eventBusPost(fileFullPath, driver, -106, HDLApp.getInstance().getString(R.string.exception_failed_to_generate_md5_for_the_upgrade_file)); HdlLogLogic.print("鍗囩骇鏂囦欢鐢熸垚md5澶辫触澶辫触(-106)", true); return false; } if (!md5.equals(fileMD5)) { - this.eventBusPost(fileFullPath, driver, -107, "鍗囩骇鏂囦欢md5姣斿澶辫触."); + this.eventBusPost(fileFullPath, driver, -107, HDLApp.getInstance().getString(R.string.exception_description_failed_to_compare_the_md5_of_the_upgrade_file)); HdlLogLogic.print("鍗囩骇鏂囦欢md5姣斿澶辫触(-107)", true); return false; } //todo 娉ㄦ剰:瑙e瘑涔嬪悗锛岃閲嶆柊鍐欐暟鎹�; FileUtils.writeByteArrayToFile(file, decrypt, false); - this.eventBusPost(fileFullPath, driver, 100, "鍗囩骇鏂囦欢涓嬭浇瀹屾垚."); + this.eventBusPost(fileFullPath, driver, 100, HDLApp.getInstance().getString(R.string.exception_the_upgrade_file_is_downloaded)); HdlLogLogic.print("鍗囩骇鏂囦欢涓嬭浇瀹屾垚.", true); return true; } catch (Exception e) { @@ -658,7 +659,6 @@ //鑷畾涔変笂鎶ヤ笅杞介┍鍔ㄦ垨鍥轰欢杩涘害涓婚 public static final String localDownloadProgress = "cloud/download/progress/up"; - public static final String driver_type = "driver"; diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index 80c62a6..c469b76 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -209,4 +209,13 @@ <string name="go_to_settings">Go to Settings</string> <string name="system_positioning_switch">You need to turn on the system positioning switch. Otherwise, the system can obtain the position information.</string> + <!--寮傚父--> + <string name="exception_unable_to_pull_up_the_cloud_upgrade_file_data">Unable to pull up the cloud upgrade file data</string> + <string name="exception_failed_to_obtain_the_md5_key_of_the_upgrade_file_on_the_cloud">Failed to obtain the md5 key of the upgrade file on the cloud</string> + <string name="exception_the_user_cancels_downloading_the_upgrade_file">The user cancels downloading the upgrade file.</string> + <string name="exception_failed_to_decrypt_the_upgrade_aes_file">Failed to decrypt the upgrade aes file.</string> + <string name="exception_failed_to_generate_md5_for_the_upgrade_file">Failed to generate md5 for the upgrade file.</string> + <string name="exception_description_failed_to_compare_the_md5_of_the_upgrade_file">Description Failed to compare the md5 of the upgrade file.</string> + <string name="exception_the_upgrade_file_is_downloaded">The upgrade file is downloaded.</string> + </resources> \ No newline at end of file diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index 06fd10a..f5b713d 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -208,4 +208,14 @@ <string name="system_positioning_switch">闇�瑕佹墦寮�绯荤粺瀹氫綅寮�鍏�,鍚﹀垯鍙栨硶鑾峰彇浣嶇疆淇℃伅.</string> + <!--寮傚父--> + <string name="exception_unable_to_pull_up_the_cloud_upgrade_file_data">鎷変笉鍒颁簯绔崌绾ф枃浠舵暟鎹�</string> + <string name="exception_failed_to_obtain_the_md5_key_of_the_upgrade_file_on_the_cloud">鎷夸笉鍒颁簯绔笂鍗囩骇鏂囦欢md5绉橀挜</string> + <string name="exception_the_user_cancels_downloading_the_upgrade_file">鐢ㄦ埛鍙栨秷涓嬭浇鍗囩骇鏂囦欢.</string> + <string name="exception_failed_to_decrypt_the_upgrade_aes_file">鍗囩骇鏂囦欢aes瑙e瘑澶辫触.</string> + <string name="exception_failed_to_generate_md5_for_the_upgrade_file">鍗囩骇鏂囦欢鐢熸垚md5澶辫触澶辫触.</string> + <string name="exception_description_failed_to_compare_the_md5_of_the_upgrade_file">鍗囩骇鏂囦欢md5姣斿澶辫触.</string> + <string name="exception_the_upgrade_file_is_downloaded">鍗囩骇鏂囦欢涓嬭浇瀹屾垚.</string> + + </resources> \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a31d99b..dc290f5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -207,7 +207,13 @@ <string name="go_to_settings">鍓嶅線璁剧疆</string> <string name="system_positioning_switch">闇�瑕佹墦寮�绯荤粺瀹氫綅寮�鍏�,鍚﹀垯鍙栨硶鑾峰彇浣嶇疆淇℃伅.</string> - - + <!--寮傚父--> + <string name="exception_unable_to_pull_up_the_cloud_upgrade_file_data">鎷変笉鍒颁簯绔崌绾ф枃浠舵暟鎹�</string> + <string name="exception_failed_to_obtain_the_md5_key_of_the_upgrade_file_on_the_cloud">鎷夸笉鍒颁簯绔笂鍗囩骇鏂囦欢md5绉橀挜</string> + <string name="exception_the_user_cancels_downloading_the_upgrade_file">鐢ㄦ埛鍙栨秷涓嬭浇鍗囩骇鏂囦欢.</string> + <string name="exception_failed_to_decrypt_the_upgrade_aes_file">鍗囩骇鏂囦欢aes瑙e瘑澶辫触.</string> + <string name="exception_failed_to_generate_md5_for_the_upgrade_file">鍗囩骇鏂囦欢鐢熸垚md5澶辫触澶辫触.</string> + <string name="exception_description_failed_to_compare_the_md5_of_the_upgrade_file">鍗囩骇鏂囦欢md5姣斿澶辫触.</string> + <string name="exception_the_upgrade_file_is_downloaded">鍗囩骇鏂囦欢涓嬭浇瀹屾垚.</string> </resources> \ No newline at end of file -- Gitblit v1.8.0