mac
2023-12-06 dd4ddc2c1279157bd87c1b9e1cf6d63aa3466af4
app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -419,15 +419,16 @@
            if (file.list() != null) {
                for (int i = 0; i < Objects.requireNonNull(file.list()).length; i++) {
                    String path = Objects.requireNonNull(file.list())[i];
//                    if (!path.contains(oid)) {
//                        continue;
//                    }
                    if (!path.contains(osImageId)) {
                        continue;
                    }
                    String[] ary = path.split("/");
                    String[] driverInfoAry = ary[ary.length - 1].split("_");
                    DeviceFirmwareBean deviceFirmwareBean = new DeviceFirmwareBean();
                    deviceFirmwareBean.setOid(driverInfoAry[0]);
                    deviceFirmwareBean.setVersion(driverInfoAry[1].replace(".zip", ""));
                    deviceFirmwareBean.setLocalUrl(HdlFileLogic.getInstance().getFirmwarePathFileName(deviceFirmwareBean.getOid(), deviceFirmwareBean.getVersion()));
                    deviceFirmwareBean.setImageId(driverInfoAry[1]);
                    deviceFirmwareBean.setVersion(driverInfoAry[2].replace(".zip", ""));
                    deviceFirmwareBean.setLocalUrl(HdlFileLogic.getInstance().getFirmwarePathFileName(deviceFirmwareBean.getOid(), osImageId, deviceFirmwareBean.getVersion()));
                    list.add(deviceFirmwareBean);
                }
            }
@@ -452,7 +453,7 @@
        HdlOtaLogic.getInstance().getDeviceUpgradeDownloadFile(url, new CloudCallBeak<ResponseBody>() {
            @Override
            public void onSuccess(ResponseBody responseBody) {
                String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, version);
                String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, imageId, version);
                boolean isBoolean = HdlOtaLogic.getInstance().disposeDownLoadFile(firmwarePathFileName, responseBody, md5, HdlOtaLogic.firmware_type);
                if (isBoolean) {
                    HdlFileLogic.getInstance().deleteFile(localUrl);//下载成功,删除旧固件文件;
@@ -480,6 +481,7 @@
        String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//固件版本id
        String version = getKeyValue("version", getKeyValue("data", data));//固件版本
        String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//云端上文件MD5
        String imageId = getKeyValue("imageId", getKeyValue("data", data));//固件镜像id
        //升级本地优先->云端升级
        boolean isLocalConnect = HdlDeviceLogic.getInstance().isLocalConnect(deviceMac);
@@ -492,7 +494,7 @@
                @Override
                public void onServiceConnected(ComponentName name, IBinder service) {
                    //本地升级固件文件路径
                    String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, version);
                    String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, imageId, version);
                    String data = HdlFileLogic.getInstance().readFile(firmwarePathFileName);
                    String md5 = HDLMD5Utils.encodeMD5(data);//网关固件需要
                    //升级固件文件地址