amethyst/app/build.gradle

164 wiersze
5.7 KiB
Groovy
Czysty Zwykły widok Historia

2023-01-11 18:31:20 +00:00
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
}
android {
namespace 'com.vitorpamplona.amethyst'
compileSdk 33
defaultConfig {
applicationId "com.vitorpamplona.amethyst"
minSdk 26
targetSdk 33
2023-03-05 00:12:48 +00:00
versionCode 87
versionName "0.23.0"
2023-01-11 18:31:20 +00:00
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary true
}
}
buildTypes {
release {
//minifyEnabled true
//proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
2023-02-06 14:15:18 +00:00
resValue "string", "app_name", "@string/app_name_release"
}
debug {
applicationIdSuffix '.debug'
versionNameSuffix '-DEBUG'
resValue "string", "app_name", "@string/app_name_debug"
2023-01-11 18:31:20 +00:00
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = '11'
}
buildFeatures {
compose true
}
composeOptions {
2023-02-25 21:18:31 +00:00
kotlinCompilerExtensionVersion "1.4.3"
2023-01-11 18:31:20 +00:00
}
packagingOptions {
resources {
excludes += '/META-INF/{AL2.0,LGPL2.1}'
}
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.9.0'
2023-02-25 21:18:31 +00:00
implementation 'androidx.activity:activity-compose:1.7.0-beta01'
2023-01-11 18:31:20 +00:00
implementation "androidx.compose.ui:ui:$compose_ui_version"
implementation "androidx.compose.ui:ui-tooling-preview:$compose_ui_version"
// Navigation
implementation("androidx.navigation:navigation-compose:$nav_version")
// Observe Live data as State
2023-02-22 15:19:30 +00:00
implementation 'androidx.compose.runtime:runtime-livedata:1.4.0-beta01'
2023-01-11 18:31:20 +00:00
2023-02-25 21:18:31 +00:00
implementation 'androidx.compose.material:material:1.4.0-beta02'
implementation "androidx.compose.material:material-icons-extended:1.4.0-beta02"
// Lifecycle
2023-02-25 21:18:31 +00:00
implementation "androidx.lifecycle:lifecycle-runtime-compose:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-livedata:$lifecycle_version"
2023-01-11 18:31:20 +00:00
// Biometrics
implementation "androidx.biometric:biometric-ktx:1.2.0-alpha05"
2023-01-11 18:31:20 +00:00
// Swipe Refresh
2023-02-25 21:18:31 +00:00
implementation 'com.google.accompanist:accompanist-swiperefresh:0.29.1-alpha'
2023-01-11 18:31:20 +00:00
// Bitcoin secp256k1 bindings to Android
2023-01-23 23:30:40 +00:00
implementation 'fr.acinq.secp256k1:secp256k1-kmp-jni-android:0.7.1'
2023-01-11 18:31:20 +00:00
// Nostr Base Protocol
implementation('com.github.vitorpamplona.NostrPostr:nostrpostrlib:master-SNAPSHOT') {
exclude group:'fr.acinq.secp256k1'
exclude module: 'guava'
exclude module: 'guava-testlib'
}
// Websockets API
2023-01-18 14:18:34 +00:00
implementation 'com.squareup.okhttp3:okhttp:5.0.0-alpha.11'
2023-01-11 18:31:20 +00:00
// Json Serialization TODO: We might need to converge between gson and Jackson (we are usin both)
implementation 'com.fasterxml.jackson.module:jackson-module-kotlin:2.14.2'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
2023-01-11 18:31:20 +00:00
2023-02-10 22:13:25 +00:00
// Robohash for Avatars
implementation group: 'com.github.vitorpamplona', name: 'android-robohash', version: 'master-SNAPSHOT', ext: 'aar'
2023-01-11 18:31:20 +00:00
// link preview
implementation 'tw.com.oneup.www:Baha-UrlPreview:1.0.1'
2023-02-25 21:18:31 +00:00
// Encrypted Key Storage
implementation 'androidx.security:security-crypto-ktx:1.1.0-alpha05'
2023-01-13 03:40:39 +00:00
// view videos
implementation 'com.google.android.exoplayer:exoplayer:2.18.4'
2023-01-13 03:40:39 +00:00
// Load images from the web.
implementation "io.coil-kt:coil-compose:2.2.2"
2023-01-16 17:57:23 +00:00
// view gifs
implementation "io.coil-kt:coil-gif:2.2.2"
// view svgs
implementation("io.coil-kt:coil-svg:2.2.2")
// Rendering clickable text
implementation "com.google.accompanist:accompanist-flowlayout:$accompanist_version"
// Permission to upload pictures:
implementation "com.google.accompanist:accompanist-permissions:$accompanist_version"
2023-01-16 02:52:59 +00:00
// tabs for user profiles
implementation "com.google.accompanist:accompanist-pager:$accompanist_version" // Pager
2023-01-16 17:57:23 +00:00
implementation "com.google.accompanist:accompanist-pager-indicators:$accompanist_version"
2023-01-16 02:52:59 +00:00
// Parses URLs from Text:
implementation "io.github.url-detector:url-detector:0.1.23"
// For QR generation
implementation 'com.google.zxing:core:3.5.1'
implementation "androidx.camera:camera-camera2:1.2.1"
implementation 'androidx.camera:camera-lifecycle:1.2.1'
implementation 'androidx.camera:camera-view:1.2.1'
// Markdown
implementation "com.halilibo.compose-richtext:richtext-ui:0.16.0"
implementation "com.halilibo.compose-richtext:richtext-ui-material:0.16.0"
implementation "com.halilibo.compose-richtext:richtext-commonmark:0.16.0"
// For QR Scanning
implementation 'com.google.mlkit:vision-common:17.3.0'
2023-02-05 17:59:35 +00:00
// Local Barcode Scanning model
// The idea is to make it work for degoogled phones
implementation 'com.google.mlkit:barcode-scanning:17.0.3'
// Local model for language identification
implementation 'com.google.mlkit:language-id:17.0.4'
// Google services model the translate text
implementation 'com.google.mlkit:translate:17.0.1'
// Automatic memory leak detection
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.10'
2023-01-11 18:31:20 +00:00
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_ui_version"
debugImplementation "androidx.compose.ui:ui-tooling:$compose_ui_version"
debugImplementation "androidx.compose.ui:ui-test-manifest:$compose_ui_version"
}