From 262ede94bcd0407e7ce0d6c3fa04ec6c37f27fd1 Mon Sep 17 00:00:00 2001 From: septs Date: Wed, 26 Feb 2025 12:06:47 +0800 Subject: [PATCH] refactor --- .idea/AndroidProjectSystem.xml | 6 ++++++ .../im/angry/openeuicc/vendored/estkme.kt | 20 +++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) create mode 100644 .idea/AndroidProjectSystem.xml diff --git a/.idea/AndroidProjectSystem.xml b/.idea/AndroidProjectSystem.xml new file mode 100644 index 0000000..4a53bee --- /dev/null +++ b/.idea/AndroidProjectSystem.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/app-common/src/main/java/im/angry/openeuicc/vendored/estkme.kt b/app-common/src/main/java/im/angry/openeuicc/vendored/estkme.kt index 4d32fb8..114bd82 100644 --- a/app-common/src/main/java/im/angry/openeuicc/vendored/estkme.kt +++ b/app-common/src/main/java/im/angry/openeuicc/vendored/estkme.kt @@ -2,6 +2,7 @@ package im.angry.openeuicc.vendored import android.util.Log import im.angry.openeuicc.util.TAG +import im.angry.openeuicc.util.decodeHex import net.typeblog.lpac_jni.ApduInterface data class ESTKmeInfo( @@ -12,15 +13,13 @@ data class ESTKmeInfo( ) fun getESTKmeInfo(iface: ApduInterface): ESTKmeInfo? { - // @formatter:off - val aid = byteArrayOf( - 0xA0.toByte(), 0x65.toByte(), 0x73.toByte(), 0x74.toByte(), 0x6B.toByte(), 0x6D.toByte(), - 0x65.toByte(), 0xFF.toByte(), 0xFF.toByte(), 0xFF.toByte(), 0xFF.toByte(), 0xFF.toByte(), - 0xFF.toByte(), 0x6D.toByte(), 0x67.toByte(), 0x74.toByte(), - ) - // @formatter:on + fun decode(b: ByteArray): String? { + if (b.size < 2) return null + if (b[b.size - 2] != 0x90.toByte() || b[b.size - 1] != 0x00.toByte()) return null + return b.sliceArray(0 until b.size - 2).decodeToString() + } return try { - iface.openChannel(aid) { transmit -> + iface.openChannel("A06573746B6D65FFFFFFFFFFFF6D6774".decodeHex()) { transmit -> fun invoke(p1: Byte) = decode(transmit(byteArrayOf(0x00, 0x00, p1, 0x00, 0x00))) ESTKmeInfo( @@ -36,8 +35,3 @@ fun getESTKmeInfo(iface: ApduInterface): ESTKmeInfo? { } } -private fun decode(b: ByteArray): String? { - if (b.size < 2) return null - if (b[b.size - 2] != 0x90.toByte() || b[b.size - 1] != 0x00.toByte()) return null - return b.sliceArray(0 until b.size - 2).decodeToString() -}