diff --git a/app/src/main/java/com/tangem/Constant.kt b/app/src/main/java/com/tangem/Constant.kt
index 433d912aa0..19a2d09a1c 100644
--- a/app/src/main/java/com/tangem/Constant.kt
+++ b/app/src/main/java/com/tangem/Constant.kt
@@ -4,6 +4,8 @@ import android.app.Activity
object Constant {
+ const val URL_TANGEM = "https://play.google.com/store/apps/details?id=com.tangem.wallet"
+
const val EXTRA_BLOCKCHAIN_DATA = "BLOCKCHAIN_DATA"
const val EXTRA_MESSAGE = "message"
diff --git a/app/src/main/java/com/tangem/ui/activity/MainActivity.kt b/app/src/main/java/com/tangem/ui/activity/MainActivity.kt
index cff1c18a5c..90a9b3c00e 100644
--- a/app/src/main/java/com/tangem/ui/activity/MainActivity.kt
+++ b/app/src/main/java/com/tangem/ui/activity/MainActivity.kt
@@ -2,10 +2,13 @@ package com.tangem.ui.activity
import android.Manifest
import android.app.Activity
+import android.content.ActivityNotFoundException
import android.content.Context
import android.content.Intent
import android.content.pm.ActivityInfo
import android.content.pm.PackageManager
+import android.graphics.Color
+import android.net.Uri
import android.nfc.NfcAdapter
import android.nfc.Tag
import android.nfc.tech.IsoDep
@@ -18,6 +21,7 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.PopupMenu
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
+import com.google.android.material.snackbar.Snackbar
import com.scottyab.rootbeer.RootBeer
import com.tangem.App
import com.tangem.Constant
@@ -128,16 +132,29 @@ class MainActivity : AppCompatActivity(), NfcAdapter.ReaderCallback, CardProtoco
val apiHelper = ServerApiCommon()
apiHelper.setLastVersionListener { response ->
try {
- if (response.isNullOrEmpty()) return@setLastVersionListener
+ if (response.isNullOrEmpty())
+ return@setLastVersionListener
val responseVersionName = response.trim(' ', '\n', '\r', '\t')
val responseBuildVersion = responseVersionName.split('.').last()
val appBuildVersion = BuildConfig.VERSION_NAME.split('.').last()
- if (responseBuildVersion.toInt() > appBuildVersion.toInt()) Toast.makeText(this, "There is a new application version: $responseVersionName", Toast.LENGTH_LONG).show()
+ if (responseBuildVersion.toInt() > appBuildVersion.toInt())
+ Snackbar.make(cl, String.format(getString(R.string.new_app_version), responseVersionName), Snackbar.LENGTH_INDEFINITE)
+ .setAction(R.string.update) {
+ try {
+ val intent = Intent(Intent.ACTION_VIEW)
+ intent.data = Uri.parse(Constant.URL_TANGEM)
+ startActivity(intent)
+ } catch (e: ActivityNotFoundException) {
+ e.printStackTrace()
+ }
+ }.show()
} catch (E: Exception) {
E.printStackTrace()
}
}
apiHelper.requestLastVersion()
+
+
}
private fun verifyPermissions() {
@@ -275,7 +292,7 @@ class MainActivity : AppCompatActivity(), NfcAdapter.ReaderCallback, CardProtoco
cardInfo.putBundle(EXTRA_TANGEM_CARD, bCard)
cardProtocol.card.saveToBundle(bCard)
- val uid = cardInfo.getString("UID")
+ val uid = cardInfo.getString(EXTRA_TANGEM_CARD_UID)
val card = TangemCard(uid)
cardInfo.getBundle(EXTRA_TANGEM_CARD)?.let { card.loadFromBundle(it) }
@@ -288,7 +305,6 @@ class MainActivity : AppCompatActivity(), NfcAdapter.ReaderCallback, CardProtoco
navigator.showLoadedWallet(this, it, ctx)
}
}
-// ?: throw CardProtocol.TangemException("Can't create CoinEngine!")
card.status == TangemCard.Status.Empty -> navigator.showEmptyWallet(this, ctx)
card.status == TangemCard.Status.Purged -> Toast.makeText(this, R.string.erased_wallet, Toast.LENGTH_SHORT).show()
card.status == TangemCard.Status.NotPersonalized -> Toast.makeText(this, R.string.not_personalized, Toast.LENGTH_SHORT).show()
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index edc089a4db..cc0bdcca10 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -1,8 +1,8 @@
-
-
-
-
-
-
+ android:layout_gravity="bottom|start"
+ android:layout_margin="10dp"
+ android:src="@drawable/ic_show_menu"
+ app:backgroundTint="@color/colorPrimary"
+ app:fabSize="normal" />
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index f20adac23e..815f8e5599 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -91,6 +91,8 @@
Last unspent
Wallet was erased
Not personalized
+ There is a new application version: %1$s
+ Update
The wallet is empty