ソースを参照

feat: sgp.22 version in euicc info activity (#130)

Co-authored-by: Peter Cai <peter@typeblog.net>
Reviewed-on: https://gitea.angry.im/PeterCxy/OpenEUICC/pulls/130
Co-authored-by: septs <github@septs.pw>
Co-committed-by: septs <github@septs.pw>
septs 1 年間 前
コミット
e7ef370e46

+ 1 - 0
app-common/src/main/java/im/angry/openeuicc/ui/EuiccInfoActivity.kt

@@ -114,6 +114,7 @@ class EuiccInfoActivity : BaseEuiccAccessActivity(), OpenEuiccContextMarker {
             )
         )
         channel.lpa.euiccInfo2.let { info ->
+            add(Item(R.string.euicc_info_sgp22_version, info?.sgp22Version))
             add(Item(R.string.euicc_info_firmware_version, info?.euiccFirmwareVersion))
             add(Item(R.string.euicc_info_globalplatform_version, info?.globalPlatformVersion))
             add(Item(R.string.euicc_info_pp_version, info?.ppVersion))

+ 1 - 0
app-common/src/main/res/values/strings.xml

@@ -122,6 +122,7 @@
     <string name="euicc_info_access_mode">Access Mode</string>
     <string name="euicc_info_removable">Removable</string>
     <string name="euicc_info_eid" translatable="false">EID</string>
+    <string name="euicc_info_sgp22_version">SGP.22 Version</string>
     <string name="euicc_info_firmware_version">eUICC OS Version</string>
     <string name="euicc_info_globalplatform_version">GlobalPlatform Version</string>
     <string name="euicc_info_sas_accreditation_number">SAS Accreditation Number</string>

+ 1 - 0
libs/lpac-jni/src/main/java/net/typeblog/lpac_jni/EuiccInfo2.kt

@@ -2,6 +2,7 @@ package net.typeblog.lpac_jni
 
 /* Corresponds to EuiccInfo2 in SGP.22 */
 data class EuiccInfo2(
+    val sgp22Version: String,
     val profileVersion: String,
     val euiccFirmwareVersion: String,
     val globalPlatformVersion: String,

+ 1 - 0
libs/lpac-jni/src/main/java/net/typeblog/lpac_jni/LpacJni.kt

@@ -62,6 +62,7 @@ internal object LpacJni {
     external fun notificationsFree(head: Long)
     // EuiccInfo2
     external fun euiccInfo2Free(info: Long)
+    external fun euiccInfo2GetSGP22Version(info: Long): String
     external fun euiccInfo2GetProfileVersion(info: Long): String
     external fun euiccInfo2GetEuiccFirmwareVersion(info: Long): String
     external fun euiccInfo2GetGlobalPlatformVersion(info: Long): String

+ 1 - 0
libs/lpac-jni/src/main/java/net/typeblog/lpac_jni/impl/LocalProfileAssistantImpl.kt

@@ -171,6 +171,7 @@ class LocalProfileAssistantImpl(
             }
 
             val ret = EuiccInfo2(
+                LpacJni.euiccInfo2GetSGP22Version(cInfo),
                 LpacJni.euiccInfo2GetProfileVersion(cInfo),
                 LpacJni.euiccInfo2GetEuiccFirmwareVersion(cInfo),
                 LpacJni.euiccInfo2GetGlobalPlatformVersion(cInfo),

+ 1 - 0
libs/lpac-jni/src/main/jni/lpac-jni/lpac-jni.c

@@ -266,6 +266,7 @@ void lpac_jni_euiccinfo2_free(struct es10c_ex_euiccinfo2 *info) {
 
 LPAC_JNI_STRUCT_GETTER_NULL_TERM_LIST_NEXT(char*, stringArr)
 LPAC_JNI_STRUCT_FREE(struct es10c_ex_euiccinfo2, euiccInfo2, lpac_jni_euiccinfo2_free)
+LPAC_JNI_STRUCT_GETTER_STRING(struct es10c_ex_euiccinfo2, euiccInfo2, svn, SGP22Version)
 LPAC_JNI_STRUCT_GETTER_STRING(struct es10c_ex_euiccinfo2, euiccInfo2, profileVersion, ProfileVersion)
 LPAC_JNI_STRUCT_GETTER_STRING(struct es10c_ex_euiccinfo2, euiccInfo2, euiccFirmwareVer, EuiccFirmwareVersion)
 LPAC_JNI_STRUCT_GETTER_STRING(struct es10c_ex_euiccinfo2, euiccInfo2, globalplatformVersion, GlobalPlatformVersion)