Updated on 2026-08-14

This commit is contained in:
Tangem 2019-08-23 12:55:50 +03:00
parent 7cf462453b
commit c56705f4cb
7 changed files with 533 additions and 20 deletions

116
.idea/codeStyles/Project.xml generated Normal file
View file

@ -0,0 +1,116 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>

386
.idea/navEditor.xml generated
View file

@ -8,15 +8,397 @@
<LayoutPositions>
<option name="myPositions">
<map>
<entry key="confirmTransactionFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="516" />
<option name="y" value="408" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_confirmTransactionFragment_to_pinRequestFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_confirmTransactionFragment_to_signTransactionFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="createNewWalletFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="324" />
<option name="y" value="-682" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="emptyWalletFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="56" />
<option name="y" value="-379" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_emptyWalletFragment_to_createNewWalletFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_emptyWalletFragment_to_pinRequestFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_emptyWalletFragment_to_verifyCard">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="loadedWalletFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="-91" />
<option name="y" value="411" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_loadedWalletFragment_to_pinRequestFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_loadedWalletFragment_to_pinSwapFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_loadedWalletFragment_to_prepareCryptonitWithdrawalFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_loadedWalletFragment_to_prepareKrakenWithdrawalFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_loadedWalletFragment_to_prepareTransactionFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_loadedWalletFragment_to_verifyCard">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="logoFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="-642" />
<option name="y" value="5" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_logoFragment_to_main">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_logoFragment_to_prepareTransactionFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="main">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="-203" />
<option name="y" value="-292" />
<option name="x" value="-425" />
<option name="y" value="250" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_main_to_emptyWalletFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_main_to_loadedWalletFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_main_to_logoFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_main_to_pinRequestFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_main_to_pinSaveFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_main_to_settingsFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="pinRequestFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="416" />
<option name="y" value="-239" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="pinSaveFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="-274" />
<option name="y" value="-387" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="pinSwapFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="76" />
<option name="y" value="811" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="prepareCryptonitOtherApiWithdrawalFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="280" />
<option name="y" value="1172" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_prepareCryptonitOtherApiWithdrawalFragment_to_qrScanFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="prepareCryptonitWithdrawalFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="9" />
<option name="y" value="1151" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="prepareKrakenWithdrawalFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="-214" />
<option name="y" value="1097" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="prepareTransactionFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="256" />
<option name="y" value="411" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_prepareTransactionFragment_to_confirmTransactionFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_prepareTransactionFragment_to_qrScanFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="purgeFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="941" />
<option name="y" value="15" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="qrScanFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="328" />
<option name="y" value="807" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="sendTransactionFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="1011" />
<option name="y" value="412" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="settingsFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="-496" />
<option name="y" value="-375" />
</Point>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="signTransactionFragment">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="760" />
<option name="y" value="412" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_signTransactionFragment_to_sendTransactionFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>
<entry key="verifyCard">
<value>
<LayoutPositions>
<option name="myPosition">
<Point>
<option name="x" value="78" />
<option name="y" value="32" />
</Point>
</option>
<option name="myPositions">
<map>
<entry key="action_verifyCard_to_pinRequestFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_verifyCard_to_pinSwapFragment">
<value>
<LayoutPositions />
</value>
</entry>
<entry key="action_verifyCard_to_purgeFragment">
<value>
<LayoutPositions />
</value>
</entry>
</map>
</option>
</LayoutPositions>
</value>
</entry>

View file

@ -82,11 +82,15 @@ dependencies {
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.0.0'
implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
implementation 'androidx.appcompat:appcompat:1.1.0-alpha04'
implementation "androidx.lifecycle:lifecycle-runtime:2.0.0"
implementation "androidx.lifecycle:lifecycle-common-java8:2.0.0"
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.fragment:fragment:1.1.0-rc04'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation "androidx.preference:preference:1.1.0-alpha04"
implementation "androidx.preference:preference:1.1.0-rc01"
implementation 'androidx.biometric:biometric:1.0.0-alpha04'
implementation 'com.google.android.material:material:1.1.0-alpha05'
implementation 'com.google.android.material:material:1.1.0-alpha09'
implementation 'androidx.core:core-ktx:1.0.2'
implementation 'com.google.dagger:dagger:2.21'
kapt 'com.google.dagger:dagger-compiler:2.21'
annotationProcessor 'com.google.dagger:dagger-compiler:2.21'
@ -106,8 +110,8 @@ dependencies {
implementation "com.orhanobut:hawk:2.0.1"
implementation 'co.nstant.in:cbor:0.8'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.0'
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.0"
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.2.2'
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.2"
// implementation 'org.bitcoinj:bitcoinj-parent:0.14.7' //TODO: is this needed?
implementation 'org.bitcoinj:bitcoinj-core:0.15.2'
implementation 'org.greenrobot:eventbus:3.1.1'

View file

@ -1,11 +1,11 @@
buildscript {
ext.kotlin_version = '1.3.30'
ext.kotlin_version = '1.3.41'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.2'
classpath 'com.android.tools.build:gradle:3.5.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
}

View file

@ -22,6 +22,13 @@ android {
}
}
buildToolsVersion '28.0.3'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
}
@ -29,7 +36,12 @@ dependencies {
implementation project(':card-common')
// implementation 'com.github.TangemCash.card_android-common:card_android-android:0.1.0'
implementation 'androidx.appcompat:appcompat:1.1.0-alpha04'
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.0.0'
implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
implementation "androidx.lifecycle:lifecycle-runtime:2.0.0"
implementation "androidx.lifecycle:lifecycle-common-java8:2.0.0"
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.scottyab:rootbeer-lib:0.0.7'
testImplementation 'junit:junit:4.12'

View file

@ -1,8 +1,7 @@
package com.tangem.card_android.android.nfc
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleObserver
import androidx.lifecycle.OnLifecycleEvent
import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.LifecycleOwner
import com.tangem.card_android.android.reader.NfcManager
/**
@ -10,15 +9,15 @@ import com.tangem.card_android.android.reader.NfcManager
*
* @see NfcManager
*/
class NfcLifecycleObserver(private var nfcManager: NfcManager) : LifecycleObserver {
class NfcLifecycleObserver(private var nfcManager: NfcManager) : DefaultLifecycleObserver {
@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
fun onResume() {
override fun onResume(owner: LifecycleOwner) {
super.onResume(owner)
nfcManager.onResume()
}
@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
fun onPause() {
override fun onPause(owner: LifecycleOwner) {
super.onPause(owner)
nfcManager.onPause()
nfcManager.onStop()
}

View file

@ -1,6 +1,6 @@
#Thu Apr 18 12:21:12 MSK 2019
#Thu Aug 22 12:21:00 MSK 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip