diff --git a/app/src/main/java/com/tangem/ui/fragment/VerifyCard.kt b/app/src/main/java/com/tangem/ui/fragment/VerifyCard.kt index 85c68bbc75..302c7f2347 100644 --- a/app/src/main/java/com/tangem/ui/fragment/VerifyCard.kt +++ b/app/src/main/java/com/tangem/ui/fragment/VerifyCard.kt @@ -278,7 +278,21 @@ class VerifyCard : androidx.fragment.app.Fragment(), NfcAdapter.ReaderCallback { else tvReusable.setText(R.string.one_off_banknote) - tvSigningMethod.text = ctx.card!!.signingMethod.description + var s="" + for(signingM in ctx.card!!.allowedSigningMethod) { + s += if(signingM==ctx.card!!.signingMethod) { + ", ${signingM.description}" + } else { + ", ${signingM.description}" + } + } + s=s.substring(2,s.length) + @Suppress("DEPRECATION") + tvSigningMethod.text = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) + Html.fromHtml(s, Html.FROM_HTML_MODE_LEGACY) + else + Html.fromHtml(s) + if (ctx.card!!.status == TangemCard.Status.Loaded || ctx.card!!.status == TangemCard.Status.Purged) { diff --git a/build.gradle b/build.gradle index 40ec3d054d..07821a2684 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.1' + classpath 'com.android.tools.build:gradle:3.3.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' } diff --git a/card-android/src/main/java/com/tangem/card_android/data/TangemCardExtensions.kt b/card-android/src/main/java/com/tangem/card_android/data/TangemCardExtensions.kt index 1d9f787409..083b876d02 100644 --- a/card-android/src/main/java/com/tangem/card_android/data/TangemCardExtensions.kt +++ b/card-android/src/main/java/com/tangem/card_android/data/TangemCardExtensions.kt @@ -30,7 +30,7 @@ fun TangemCard.loadFromBundle(B: Bundle) { if (B.containsKey("settingsMask")) settingsMask = B.getInt("settingsMask") pauseBeforePIN2 = B.getInt("pauseBeforePIN2") if (B.containsKey("signingMethod")) - setSigningMethod(TangemCard.SigningMethod.valueOf(B.getString("signingMethod")!!).ID) + setSigningMethod(B.getInt("signingMethod")) if (B.containsKey("Manufacturer")) setManufacturer(Manufacturer.valueOf(B.getString("Manufacturer")!!), B.getBoolean("ManufacturerConfirmed", false)) if (B.containsKey("EncryptionMode")) @@ -108,7 +108,14 @@ fun TangemCard.saveToBundle(B: Bundle) { B.putInt("Health", health) if (settingsMask != null) B.putInt("settingsMask", settingsMask) B.putInt("pauseBeforePIN2", pauseBeforePIN2) - if (signingMethod != null) B.putString("signingMethod", signingMethod.name) + if( allowedSigningMethod!=null ){ + var iSigningMethod=0x80 + for(sM in allowedSigningMethod) + { + iSigningMethod=iSigningMethod.or(0x01.shl(sM.ID)) + } + B.putInt("signingMethod", iSigningMethod) + } if (manufacturer != null) B.putString("Manufacturer", manufacturer.name) if (encryptionMode != null) B.putString("EncryptionMode", encryptionMode.name) if (issuer != null) B.putString("Issuer", issuer.getID()) diff --git a/card-common/src/main/java/com/tangem/card_common/data/TangemCard.java b/card-common/src/main/java/com/tangem/card_common/data/TangemCard.java index e3a5d8e1eb..c73b0953b8 100644 --- a/card-common/src/main/java/com/tangem/card_common/data/TangemCard.java +++ b/card-common/src/main/java/com/tangem/card_common/data/TangemCard.java @@ -450,7 +450,7 @@ public class TangemCard { private SigningMethod signingMethod; - private EnumSet allowedSigningMethod = EnumSet.noneOf(SigningMethod.class); + public EnumSet allowedSigningMethod = EnumSet.noneOf(SigningMethod.class); public void setSigningMethod(int signingMethodID) { allowedSigningMethod.clear();