导航菜单

页面标题

页面副标题

xDrip+ v04633772025.07.16 - FirmwareDownload.java 源代码

正在查看: xDrip+ v04633772025.07.16 应用的 FirmwareDownload.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.eveningoutpost.dexdrip.watch.thinjam.firmware;

import com.eveningoutpost.dexdrip.models.JoH;
import com.eveningoutpost.dexdrip.models.UserError;
import com.eveningoutpost.dexdrip.watch.thinjam.BlueJay;
import com.eveningoutpost.dexdrip.watch.thinjam.BlueJayInfo;
import com.eveningoutpost.dexdrip.watch.thinjam.io.GetURL;
import java.util.List;
import java.util.Locale;

public class FirmwareDownload {
    public static List<BlueJayManifest> checkAvailability(String str) {
        if (str == null) {
            return null;
        }
        String upperCase = str.toUpperCase();
        String fwPrefix = BlueJayFwId.getFwPrefix(upperCase, BlueJay.getIdentityKey(upperCase));
        if (fwPrefix != null) {
            String url = GetURL.getURL(String.format(Locale.US, "%s%s%s?p=%s&m=%s&rr=%d", "https://cdn159875.bluejay.website/cdn/firmware/bluejay/", fwPrefix, "-manifest", upperCase.replace(":", "-"), BlueJayInfo.getInfo(upperCase).getMetrics(), Long.valueOf(JoH.tsl() / 60000)));
            if (url != null) {
                UserError.Log.d("BluejayFirmware", "Manifest: " + url);
                return BlueJayManifest.parseToList(url);
            }
            UserError.Log.d("BluejayFirmware", "No manifest found");
        } else {
            UserError.Log.d("BluejayFirmware", "Insufficient information to look for firmware");
        }
        return null;
    }

    public static byte[] getLatestFirmwareBytes(String str, int i) {
        List<BlueJayManifest> checkAvailability = checkAvailability(str);
        if (checkAvailability == null) {
            return null;
        }
        UserError.Log.d("BluejayFirmware", "Parsing available list: " + checkAvailability.size());
        String highestVersionFilename = getHighestVersionFilename(checkAvailability, i);
        UserError.Log.d("BluejayFirmware", "Download Filename: " + highestVersionFilename);
        if (highestVersionFilename != null) {
            return GetURL.getURLbytes(String.format(Locale.US, "%s%s", "https://cdn159875.bluejay.website/cdn/firmware/bluejay/", highestVersionFilename));
        }
        return null;
    }

    private static BlueJayManifest getHighestVersionRecord(List<BlueJayManifest> list, int i) {
        BlueJayManifest blueJayManifest = null;
        if (list != null) {
            for (BlueJayManifest blueJayManifest2 : list) {
                UserError.Log.d("BluejayFirmware", blueJayManifest2.fileName + " " + blueJayManifest2.type + " " + blueJayManifest2.version);
                if (blueJayManifest2.type == i && (blueJayManifest == null || blueJayManifest.version < blueJayManifest2.version)) {
                    blueJayManifest = blueJayManifest2;
                }
            }
        }
        return blueJayManifest;
    }

    private static String getHighestVersionFilename(List<BlueJayManifest> list, int i) {
        BlueJayManifest highestVersionRecord = getHighestVersionRecord(list, i);
        if (highestVersionRecord != null) {
            return highestVersionRecord.fileName;
        }
        return null;
    }

    public static int getHighestVersionNumber(List<BlueJayManifest> list, int i) {
        BlueJayManifest highestVersionRecord = getHighestVersionRecord(list, i);
        if (highestVersionRecord != null) {
            return highestVersionRecord.version;
        }
        return -1;
    }
}