apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'com.google.gms.google-services' apply plugin: 'com.google.firebase.crashlytics' apply from: '../dependencies.gradle' android { compileSdkVersion 33 defaultConfig { applicationId "com.tangem.wallet" versionCode project.hasProperty('versionCode') ? project.property('versionCode') as int : 1 versionName project.hasProperty('versionName') ? project.property('versionName') : "1.0.0.-SNAPSHOT" minSdkVersion 21 targetSdkVersion 33 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" buildConfigField 'Boolean', environmentConfig.testActionEnabled, 'false' buildConfigField 'Boolean', environmentConfig.logEnabled, 'false' } buildFeatures { compose true viewBinding true } buildTypes { release { debuggable false minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.debug buildConfigField 'String', environmentConfig.environment, '\"prod\"' buildConfigField 'Boolean', environmentConfig.testActionEnabled, 'false' buildConfigField 'Boolean', environmentConfig.logEnabled, 'false' } debug { debuggable true minifyEnabled false applicationIdSuffix ".dev" signingConfig signingConfigs.debug firebaseCrashlytics { mappingFileUploadEnabled false } buildConfigField 'String', environmentConfig.environment, '\"dev\"' buildConfigField 'Boolean', environmentConfig.testActionEnabled, 'true' buildConfigField 'Boolean', environmentConfig.logEnabled, 'true' } debug_beta { initWith release debuggable false versionNameSuffix "-beta" applicationIdSuffix ".debug" buildConfigField 'String', environmentConfig.environment, '\"prod\"' buildConfigField 'Boolean', environmentConfig.testActionEnabled, 'false' buildConfigField 'Boolean', environmentConfig.logEnabled, 'false' } } kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 coreLibraryDesugaringEnabled false } composeOptions { kotlinCompilerExtensionVersion '1.1.0' } packagingOptions { exclude 'lib/x86_64/darwin/libscrypt.dylib' exclude 'lib/x86_64/freebsd/libscrypt.so' exclude 'lib/x86_64/linux/libscrypt.so' } } repositories { maven { url "https://jitpack.io" } } dependencies { implementation fileTree(include: ['*.aar'], dir: 'libs') implementation implementation(project(path: ':domain')) implementation implementation(project(path: ':network')) implementation implementation(project(path: ':common')) implementation 'androidx.core:core-ktx:1.9.0' implementation 'androidx.appcompat:appcompat:1.5.1' implementation 'androidx.fragment:fragment-ktx:1.5.3' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'com.google.android.material:material:1.6.1' implementation 'com.google.android.play:core:1.10.3' implementation 'com.google.android.play:core-ktx:1.8.1' coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5' implementation "com.tangem:blockchain:${versions.tangem_blockchain_sdk}" implementation "com.tangem.tangem-sdk-kotlin:core:${versions.tangem_card_sdk}" implementation "com.tangem.tangem-sdk-kotlin:android:${versions.tangem_card_sdk}" // WebView implementation "androidx.browser:browser:1.4.0" implementation 'com.jakewharton.timber:timber:4.7.1' //lifecycle implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.5.1" implementation "androidx.lifecycle:lifecycle-common-java8:2.5.1" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1" implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.5.1" implementation "org.rekotlin:rekotlin:1.0.4" // QR implementation 'com.google.zxing:core:3.3.3' implementation 'me.dm7.barcodescanner:zxing:1.9.8' // Camera implementation 'com.otaliastudios:cameraview:2.6.3' // Image Loading implementation 'io.coil-kt:coil:2.1.0' implementation 'io.coil-kt:coil-compose:2.1.0' // Firebase implementation platform('com.google.firebase:firebase-bom:26.0.0') implementation 'com.google.firebase:firebase-analytics-ktx' implementation 'com.google.firebase:firebase-crashlytics-ktx' // Analytics implementation 'com.appsflyer:af-android-sdk:6.5.1' implementation 'com.amplitude:android-sdk:2.36.1' // WalletConnect implementation 'com.github.salomonbrys.kotson:kotson:2.5.0' // Network and Json //TODO: refactoring: remove it when all network services moved to the network module implementation 'com.squareup.retrofit2:retrofit:2.8.1' implementation 'com.squareup.retrofit2:converter-moshi:2.6.0' implementation 'com.squareup.moshi:moshi:1.12.0' implementation "com.squareup.moshi:moshi-kotlin:1.12.0" implementation(platform("com.squareup.okhttp3:okhttp-bom:4.9.3")) implementation("com.squareup.okhttp3:okhttp") implementation("com.squareup.okhttp3:logging-interceptor") // Support implementation("com.zendesk:chat:3.3.5") implementation("com.zendesk:messaging:5.2.4") //Crypto implementation "com.madgag.spongycastle:core:1.58.0.0" // animation implementation "com.airbnb.android:lottie:3.4.0" // Shopify implementation('com.shopify.mobilebuysdk:buy3:12.0.0') { exclude group: "com.shopify.graphql.support" exclude module: 'joda-time' } // Google Pay implementation 'com.google.android.gms:play-services-wallet:19.1.0' //Compose implementation 'androidx.activity:activity-compose:1.5.0' implementation 'androidx.compose.material:material:1.1.1' implementation 'androidx.compose.animation:animation:1.1.1' implementation 'androidx.compose.foundation:foundation:1.2.0-rc03' implementation 'androidx.compose.ui:ui:1.1.1' implementation 'androidx.compose.ui:ui-tooling:1.1.1' implementation "com.google.accompanist:accompanist-appcompat-theme:0.23.0" implementation "com.google.accompanist:accompanist-systemuicontroller:0.23.0" implementation "com.github.skydoves:androidveil:1.1.2" implementation 'com.github.kirich1409:viewbindingpropertydelegate-noreflection:1.5.6' // Shared preferences (encrypted) implementation 'at.favre.lib:armadillo:0.9.0' testImplementation 'junit:junit:4.13.2' testImplementation "com.google.truth:truth:1.1.3" androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' }