From 5dcffccc790cc5848d6b69b50cf306d900ecc997 Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 21 Jan 2020 17:08:32 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../com/tangem/ui/fragment/MainFragment.kt | 3 +- .../ui/fragment/additional/TagFragment.kt | 20 ++- .../com/tangem/wallet/CoinEngineFactory.kt | 2 +- .../java/com/tangem/wallet/TangemContext.java | 10 +- .../java/com/tangem/wallet/xlm/XlmEngine.java | 4 +- .../wallet/{xlmtag => xlmTag}/XlmTagData.kt | 2 +- .../wallet/{xlmtag => xlmTag}/XlmTagEngine.kt | 115 ++++++------------ .../server_android/data/LocalStorage.kt | 3 +- .../src/main/res/drawable/card_tgslix.png | Bin 0 -> 50098 bytes 9 files changed, 56 insertions(+), 103 deletions(-) rename app/src/main/java/com/tangem/wallet/{xlmtag => xlmTag}/XlmTagData.kt (99%) rename app/src/main/java/com/tangem/wallet/{xlmtag => xlmTag}/XlmTagEngine.kt (78%) create mode 100644 server-android/src/main/res/drawable/card_tgslix.png diff --git a/app/src/main/java/com/tangem/ui/fragment/MainFragment.kt b/app/src/main/java/com/tangem/ui/fragment/MainFragment.kt index ffd3d3f097..3c4b5285c5 100644 --- a/app/src/main/java/com/tangem/ui/fragment/MainFragment.kt +++ b/app/src/main/java/com/tangem/ui/fragment/MainFragment.kt @@ -7,7 +7,6 @@ import android.net.Uri import android.nfc.NfcAdapter import android.nfc.Tag import android.nfc.tech.IsoDep -import android.nfc.tech.Ndef import android.nfc.tech.NfcV import android.os.Bundle import android.text.Spannable @@ -55,7 +54,7 @@ import com.tangem.wallet.BuildConfig import com.tangem.wallet.CoinEngineFactory import com.tangem.wallet.R import com.tangem.wallet.TangemContext -import com.tangem.wallet.xlmtag.XlmTagEngine +import com.tangem.wallet.xlmTag.XlmTagEngine import kotlinx.android.synthetic.main.fragment_main.* import kotlinx.android.synthetic.main.layout_touch_card.* import kotlinx.coroutines.CoroutineScope diff --git a/app/src/main/java/com/tangem/ui/fragment/additional/TagFragment.kt b/app/src/main/java/com/tangem/ui/fragment/additional/TagFragment.kt index dd2d27594c..8514ccf37c 100644 --- a/app/src/main/java/com/tangem/ui/fragment/additional/TagFragment.kt +++ b/app/src/main/java/com/tangem/ui/fragment/additional/TagFragment.kt @@ -20,7 +20,7 @@ import com.tangem.ui.navigation.NavigationResultListener import com.tangem.util.LOG import com.tangem.util.UtilHelper import com.tangem.wallet.* -import com.tangem.wallet.xlmtag.XlmTagEngine +import com.tangem.wallet.xlmTag.XlmTagEngine import kotlinx.android.synthetic.main.fr_loaded_wallet.* import kotlinx.android.synthetic.main.layout_btn_details.* import kotlinx.android.synthetic.main.layout_tangem_card.* @@ -67,7 +67,7 @@ class TagFragment : BaseFragment(), NavigationResultListener { btnExtract.backgroundTintList = ContextCompat.getColorStateList(requireContext(), R.color.btn_dark) - ivTangemCard.setImageResource(R.drawable.card_default_nft) + ivTangemCard.setImageResource(R.drawable.card_tgslix) tvBalance.setSingleLine(!engine.needMultipleLinesForBalance()) tvWallet.text = ctx.coinData.wallet @@ -78,7 +78,6 @@ class TagFragment : BaseFragment(), NavigationResultListener { srl?.setOnRefreshListener { refresh(true) } requestBalanceAndUnspentTransactions() -// update() } @@ -129,14 +128,13 @@ class TagFragment : BaseFragment(), NavigationResultListener { else -> tvBalance.text = "" } - if (ctx.card!!.tokenSymbol.length > 1) { - @Suppress("DEPRECATION") val html = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) - Html.fromHtml(ctx.blockchainName, Html.FROM_HTML_MODE_LEGACY) - else - Html.fromHtml(ctx.blockchainName) - tvBlockchain.text = html - } else - tvBlockchain.text = ctx.blockchainName + + @Suppress("DEPRECATION") val html = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) + Html.fromHtml(ctx.blockchainName, Html.FROM_HTML_MODE_LEGACY) + else + Html.fromHtml(ctx.blockchainName) + tvBlockchain.text = html + } diff --git a/app/src/main/java/com/tangem/wallet/CoinEngineFactory.kt b/app/src/main/java/com/tangem/wallet/CoinEngineFactory.kt index c65b0da0e2..1f888ee616 100644 --- a/app/src/main/java/com/tangem/wallet/CoinEngineFactory.kt +++ b/app/src/main/java/com/tangem/wallet/CoinEngineFactory.kt @@ -19,7 +19,7 @@ import com.tangem.wallet.token.TokenEngine import com.tangem.wallet.tezos.TezosEngine import com.tangem.wallet.xlm.XlmAssetEngine import com.tangem.wallet.xlm.XlmEngine -import com.tangem.wallet.xlmtag.XlmTagEngine +import com.tangem.wallet.xlmTag.XlmTagEngine import com.tangem.wallet.xrp.XrpEngine /** diff --git a/app/src/main/java/com/tangem/wallet/TangemContext.java b/app/src/main/java/com/tangem/wallet/TangemContext.java index 07cb229329..1f71dc9873 100644 --- a/app/src/main/java/com/tangem/wallet/TangemContext.java +++ b/app/src/main/java/com/tangem/wallet/TangemContext.java @@ -55,14 +55,16 @@ public class TangemContext { public String getBlockchainName() { Blockchain blockchain = getBlockchain(); if (blockchain == Blockchain.Token || blockchain == Blockchain.RootstockToken) { - String token = card.getTokenSymbol(); - return token + "
" + getBlockchain().getOfficialName() + " smart contract token"; + return card.getTokenSymbol()+ "
" + getBlockchain().getOfficialName() + " smart contract token"; } if (blockchain == Blockchain.NftToken) { - return card.getTokenSymbol().substring(4) + "
" + getBlockchain().getOfficialName() + " NFT token"; + return card.getTokenSymbol().substring(4) + "
" + getBlockchain().getOfficialName() + " non-fungible token"; } if (blockchain == Blockchain.StellarAsset) { - return card.getTokenSymbol() + "
" + getBlockchain().getOfficialName() + " asset"; + return card.getTokenSymbol() + "
" + getBlockchain().getOfficialName() + " asset"; + } + if (blockchain == Blockchain.StellarTag) { + return "TANGEM TAG
"+ getBlockchain().getOfficialName() + " non-fungible token "; } return blockchain.getOfficialName(); } diff --git a/app/src/main/java/com/tangem/wallet/xlm/XlmEngine.java b/app/src/main/java/com/tangem/wallet/xlm/XlmEngine.java index c707517abc..297991bd3f 100644 --- a/app/src/main/java/com/tangem/wallet/xlm/XlmEngine.java +++ b/app/src/main/java/com/tangem/wallet/xlm/XlmEngine.java @@ -76,7 +76,7 @@ public class XlmEngine extends CoinEngine { public String getBalanceHTML() { Amount balance = getBalance(); if (balance != null) { - return " " + balance.toDescriptionString(getDecimals()) + "
+ " + coinData.getReserve().toDescriptionString(getDecimals()) + " reserve"; + return " " + balance.toDescriptionString(getDecimals()) + "
+ " + coinData.getReserve().toDescriptionString(getDecimals()) + " reserve1"; } else { return ""; } @@ -243,7 +243,7 @@ public class XlmEngine extends CoinEngine { // return; // } - if ((ctx.getCard().getOfflineBalance() != null) && !coinData.isBalanceReceived() && (ctx.getCard().getRemainingSignatures() == ctx.getCard().getMaxSignatures()) && coinData.getBalance().notZero()) { + if ((ctx.getCard().getOfflineBalance() != null) && !coinData.isBalanceReceived() && (ctx.getCard().getRemainingSignatures() == ctx.getCard().getMaxSignatures())) { balanceValidator.setScore(80); balanceValidator.setFirstLine(R.string.balance_validator_first_line_verified_offline); balanceValidator.setSecondLine(R.string.balance_validator_second_line_internet_to_get_balance); diff --git a/app/src/main/java/com/tangem/wallet/xlmtag/XlmTagData.kt b/app/src/main/java/com/tangem/wallet/xlmTag/XlmTagData.kt similarity index 99% rename from app/src/main/java/com/tangem/wallet/xlmtag/XlmTagData.kt rename to app/src/main/java/com/tangem/wallet/xlmTag/XlmTagData.kt index bdd8f4e3af..e8287ccd86 100644 --- a/app/src/main/java/com/tangem/wallet/xlmtag/XlmTagData.kt +++ b/app/src/main/java/com/tangem/wallet/xlmTag/XlmTagData.kt @@ -1,4 +1,4 @@ -package com.tangem.wallet.xlmtag +package com.tangem.wallet.xlmTag import android.os.Bundle import android.util.Log diff --git a/app/src/main/java/com/tangem/wallet/xlmtag/XlmTagEngine.kt b/app/src/main/java/com/tangem/wallet/xlmTag/XlmTagEngine.kt similarity index 78% rename from app/src/main/java/com/tangem/wallet/xlmtag/XlmTagEngine.kt rename to app/src/main/java/com/tangem/wallet/xlmTag/XlmTagEngine.kt index 4fe5de60ca..3a4548442d 100644 --- a/app/src/main/java/com/tangem/wallet/xlmtag/XlmTagEngine.kt +++ b/app/src/main/java/com/tangem/wallet/xlmTag/XlmTagEngine.kt @@ -1,4 +1,4 @@ -package com.tangem.wallet.xlmtag +package com.tangem.wallet.xlmTag import android.net.Uri import android.os.StrictMode @@ -53,12 +53,18 @@ class XlmTagEngine : CoinEngine { } override fun getBalanceHTML(): String { - return if (hasBalanceInfo() && isBalanceNotZero && coinData!!.fundsFromTrustedSource) { - ctx.getString(R.string.tag_genuine) - } else if (coinData!!.fundsSentToTrustedSource) { - ctx.getString(R.string.tag_claimed) + return if (hasBalanceInfo()) { + if (coinData!!.fundsFromTrustedSource) { +// if (coinData!!.fundsSentToTrustedSource) { //TODO: shut down for example tags to appear genuine, turn on for production +// ctx.getString(R.string.tag_claimed) +// } else { + ctx.getString(R.string.tag_genuine) +// } + } else { + ctx.getString(R.string.tag_not_genuine) + } } else { - ctx.getString(R.string.tag_not_genuine) + "" } } @@ -72,7 +78,7 @@ class XlmTagEngine : CoinEngine { } override fun hasBalanceInfo(): Boolean { - return if (coinData == null) false else coinData!!.getBalance() != null || coinData!!.isError404 + return if (coinData == null) false else coinData!!.isBalanceReceived } override fun isExtractPossible(): Boolean { @@ -130,43 +136,30 @@ class XlmTagEngine : CoinEngine { } override fun validateBalance(balanceValidator: BalanceValidator): Boolean { - return try { - if (ctx.card.offlineBalance == null && !ctx.coinData.isBalanceReceived || !ctx.coinData.isBalanceReceived && ctx.card.remainingSignatures != ctx.card.maxSignatures) { - if (coinData!!.isError404) { - balanceValidator.setScore(0) - balanceValidator.firstLine = R.string.balance_validator_first_line_no_account - balanceValidator.setSecondLine(R.string.balance_validator_second_line_create_account_instruction) - } else { - balanceValidator.setScore(0) - balanceValidator.firstLine = R.string.balance_validator_first_line_unknown_balance - balanceValidator.setSecondLine(R.string.balance_validator_second_line_unverified_balance) - return false - } + try { + if (!hasBalanceInfo()) { + balanceValidator.setScore(0) + balanceValidator.firstLine = R.string.balance_validator_first_line_no_connection + balanceValidator.setSecondLine(R.string.balance_validator_second_line_authenticity_not_verified) + return false } - - if (coinData!!.isBalanceReceived && coinData!!.isBalanceEqual) { + if (coinData!!.fundsFromTrustedSource) { balanceValidator.setScore(100) - balanceValidator.firstLine = R.string.balance_validator_first_line_verified_balance - balanceValidator.setSecondLine(R.string.balance_validator_second_line_confirmed_in_blockchain) - if (coinData!!.getBalance()!!.isZero) { - balanceValidator.firstLine = R.string.balance_validator_first_line_empty_wallet - balanceValidator.setSecondLine(R.string.empty_string) - } + balanceValidator.firstLine = R.string.balance_validator_first_line_verified_in_blockchain + balanceValidator.setSecondLine(R.string.empty_string) + } else { + balanceValidator.setScore(0) + balanceValidator.firstLine = R.string.balance_validator_first_line_authenticity + balanceValidator.setSecondLine(R.string.empty_string) } - - if (ctx.card.offlineBalance != null && !coinData!!.isBalanceReceived && ctx.card.remainingSignatures == ctx.card.maxSignatures && coinData!!.getBalance()!!.notZero()) { - balanceValidator.setScore(80) - balanceValidator.firstLine = R.string.balance_validator_first_line_verified_offline - balanceValidator.setSecondLine(R.string.balance_validator_second_line_internet_to_get_balance) - } - - true + return true } catch (e: Exception) { e.printStackTrace() - false + return false } } + override fun getBalance(): Amount? { return if (!hasBalanceInfo()) null else coinData!!.getBalance()!! } @@ -310,7 +303,7 @@ class XlmTagEngine : CoinEngine { val accountKeyPair = KeyPair.fromAccountId(coinData!!.wallet) try { - var operationsPage = server.payments().forAccount(accountKeyPair).order(RequestBuilder.Order.DESC).execute() + var operationsPage = server.payments().forAccount(accountKeyPair).limit(200).order(RequestBuilder.Order.DESC).execute() Log.e("Stellar", operationsPage.records.toString()) operations.addAll(operationsPage.records) @@ -324,6 +317,8 @@ class XlmTagEngine : CoinEngine { } parsePayments(blockchainRequestsCallbacks) + + CoroutineScope(Dispatchers.Main).launch { blockchainRequestsCallbacks.onComplete(!ctx.hasError()) } } catch (e: Exception) { if (e.message != null) { ctx.error = e.message @@ -342,53 +337,11 @@ class XlmTagEngine : CoinEngine { Log.e("Stellar", "fundsFromTrustedSource $coinData!!.fundsFromTrustedSource, " + "fundsSentToTrustedSource $coinData!!.fundsSentToTrustedSource") - blockchainRequestsCallbacks.onComplete(!ctx.hasError()) + coinData!!.isBalanceReceived = true } override fun requestBalanceAndUnspentTransactions(blockchainRequestsCallbacks: BlockchainRequestsCallbacks) { CoroutineScope(Dispatchers.IO).launch { requestPayments(blockchainRequestsCallbacks) } - val serverApi = ServerApiStellar(Blockchain.Stellar) - val listener: ServerApiStellar.Listener = object : ServerApiStellar.Listener { - override fun onSuccess(request: StellarRequest.Base) { - Log.i(TAG, "onSuccess: " + request.javaClass.simpleName) - if (request is StellarRequest.Balance) { - coinData!!.accountResponse = request.accountResponse - coinData!!.validationNodeDescription = serverApi.currentURL - - blockchainRequestsCallbacks.onProgress() - } else if (request is Ledgers) { - coinData!!.setLedgerResponse(request.ledgerResponse) - if (serverApi.isRequestsSequenceCompleted) { - } else { - blockchainRequestsCallbacks.onProgress() - } - } else { - ctx.error = "Invalid request logic" - blockchainRequestsCallbacks.onComplete(false) - } - } - - override fun onFail(request: StellarRequest.Base) { - Log.i(TAG, "onFail: " + request.javaClass.simpleName + " " + request.error) - if (request.errorResponse != null && request.errorResponse.code == 404) { - coinData!!.isError404 = true - } else { - ctx.error = request.error - } - if (serverApi.isRequestsSequenceCompleted) { - if (ctx.hasError()) { - blockchainRequestsCallbacks.onComplete(false) - } else { - blockchainRequestsCallbacks.onComplete(true) - } - } else { - blockchainRequestsCallbacks.onProgress() - } - } - } - serverApi.setListener(listener) - serverApi.requestData(ctx, StellarRequest.Balance(coinData!!.wallet)) - serverApi.requestData(ctx, Ledgers()) } @Throws(Exception::class) @@ -463,7 +416,7 @@ class XlmTagEngine : CoinEngine { private val multiplier = BigDecimal("10000000") - const val OPERATIONS_LIMIT = 50 + const val OPERATIONS_LIMIT = 200 private val TRUSTED_DESTINATION = "GAYPZMHFZERB42ONEJ4CY6ADDVTINEXMY6OZ5G6CLR4HHVKOSNJSZGMM" private val TRUSTED_SOURCE = "GAZY7H4BWWEVB6QGB4RV3LW7DH5NO5CD5O6JCEQXA7N2UCGZSAPJFYW2" } diff --git a/server-android/src/main/java/com/tangem/server_android/data/LocalStorage.kt b/server-android/src/main/java/com/tangem/server_android/data/LocalStorage.kt index 81dc1f368a..3fa43bfe6b 100644 --- a/server-android/src/main/java/com/tangem/server_android/data/LocalStorage.kt +++ b/server-android/src/main/java/com/tangem/server_android/data/LocalStorage.kt @@ -47,7 +47,7 @@ class LocalStorage artworks = HashMap() } - if (artworks.count() < 31) { + if (artworks.count() < 32) { // forceSave=true only on the last one putResourceArtworkToCatalog(R.drawable.card_default, false) putResourceArtworkToCatalog(R.drawable.card_default_nft, false) @@ -78,6 +78,7 @@ class LocalStorage putResourceArtworkToCatalog(R.drawable.card_ru043, false) putResourceArtworkToCatalog(R.drawable.card_tg044, false) putResourceArtworkToCatalog(R.drawable.card_tg046, false) + putResourceArtworkToCatalog(R.drawable.card_tgslix, false) putResourceArtworkToCatalog(R.drawable.card_bc00, false) putResourceArtworkToCatalog(R.drawable.card_ff32, true) } diff --git a/server-android/src/main/res/drawable/card_tgslix.png b/server-android/src/main/res/drawable/card_tgslix.png new file mode 100644 index 0000000000000000000000000000000000000000..fe2f54459841855af88c108a7df19c6dae60d04b GIT binary patch literal 50098 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� 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 literal 0 HcmV?d00001