diff --git a/app-common/src/main/java/im/angry/openeuicc/util/Vendors.kt b/app-common/src/main/java/im/angry/openeuicc/util/Vendors.kt index cc4cc56..8a49797 100644 --- a/app-common/src/main/java/im/angry/openeuicc/util/Vendors.kt +++ b/app-common/src/main/java/im/angry/openeuicc/util/Vendors.kt @@ -132,17 +132,16 @@ private class Eastcompeace : EuiccVendor { override fun tryParseEuiccVendorInfo(channel: EuiccChannel): EuiccVendorInfo? { if (!channel.lpa.eID.startsWith(EID_PREFIX)) return null - return channel.apduInterface.withLogicalChannel(PRODUCT_AID, ::parseSCID) - } - - fun parseSCID(transmit: (ByteArray) -> ByteArray): EuiccVendorInfo? { - val scid = decodeResponse(transmit(COMMAND))?.let(::SCID) ?: return null - Log.i(TAG, "Eastcompeace SCID: $scid") - EuiccVendorInfo( - skuName = "Eastcompeace", - serialNumber = scid.uniquelyIdentify.encodeHex(), - bootloaderVersion = scid.bootloaderVersion.encodeHex(), - firmwareVersion = scid.cosVersion.encodeHex(), - ) + return channel.apduInterface.withLogicalChannel(PRODUCT_AID) { transmit -> + val scid = decodeResponse(transmit(COMMAND))?.let(::SCID) + ?: return@withLogicalChannel null + Log.i(TAG, "Eastcompeace SCID: $scid") + EuiccVendorInfo( + skuName = "Eastcompeace", + serialNumber = scid.uniquelyIdentify.encodeHex(), + bootloaderVersion = scid.bootloaderVersion.encodeHex(), + firmwareVersion = scid.cosVersion.encodeHex(), + ) + } } } \ No newline at end of file