Browse Source

Added buildSrc/Dependencies.kt resulting in better readable build.gradles. Incorporated libraries required from SDK Demo App.

master
jahway603 4 years ago
parent
commit
7556c8254b
  1. 60
      app/build.gradle
  2. 2
      app/src/main/AndroidManifest.xml
  3. 2053
      app/src/main/res/values/word_list_bip39.xml
  4. 11
      build.gradle
  5. 7
      buildSrc/build.gradle.kts
  6. 61
      buildSrc/src/main/java/org/myhush/silentdragon/Dependencies.kt

60
app/build.gradle

@ -1,18 +1,22 @@
// Copyright 2019-2020 The Hush developers
// Released under the GPLv3
import org.myhush.silentdragon.Deps
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
android {
compileSdkVersion 29
buildToolsVersion "29.0.3"
ndkVersion "21.1.6352462"
compileSdkVersion Deps.compileSdkVersion
buildToolsVersion Deps.buildToolsVersion
defaultConfig {
applicationId "org.myhush.silentdragon"
minSdkVersion 17
targetSdkVersion 29
minSdkVersion Deps.minSdkVersion
targetSdkVersion Deps.targetSdkVersion
multiDexEnabled true
versionCode 4
versionName "0.5.16"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@ -31,6 +35,15 @@ android {
}
}
compileOptions {
sourceCompatibility 1.8
targetCompatibility 1.8
}
kotlinOptions {
jvmTarget = "1.8"
}
}
def secretsPropertiesFile = rootProject.file("secrets.properties")
@ -51,19 +64,48 @@ if (secretsPropertiesFile.exists()) {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation Deps.Kotlin.STDLIB
implementation Deps.Kotlin.Coroutines.ANDROID
implementation Deps.Kotlin.Coroutines.CORE
implementation Deps.AndroidX.APPCOMPAT
implementation Deps.AndroidX.CONSTRAINT_LAYOUT
implementation Deps.AndroidX.CORE_KTX
implementation Deps.AndroidX.FRAGMENT_KTX
implementation Deps.AndroidX.LEGACY
implementation Deps.AndroidX.MULTIDEX
implementation Deps.AndroidX.PAGING
implementation Deps.AndroidX.VECTOR_DRAWABLE
implementation Deps.AndroidX.Navigation.FRAGMENT_KTX
implementation Deps.AndroidX.Navigation.UI_KTX
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidmads.library.qrgenearator:QRGenearator:1.0.3'
implementation 'com.squareup.okhttp3:okhttp:3.10.0'
implementation 'com.beust:klaxon:5.0.1'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.google.android.gms:play-services-vision:17.0.2'
implementation 'androidx.vectordrawable:vectordrawable:1.0.0'
implementation 'com.github.joshjdevl.libsodiumjni:libsodium-jni-aar:2.0.1'
implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.19'
implementation Deps.AndroidX.CameraX.CAMERA2
implementation Deps.AndroidX.CameraX.CORE
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
// from Demo App SDK
implementation Deps.Hush.ANDROID_WALLET_PLUGINS
implementation Deps.Hush.Sdk.MAINNET
implementation Deps.Hush.KOTLIN_BIP39
implementation Deps.Grpc.ANDROID
implementation Deps.Grpc.OKHTTP
implementation Deps.Grpc.PROTOBUG
implementation Deps.Grpc.STUB
implementation 'javax.annotation:javax.annotation-api:1.3.2'
implementation Deps.AndroidX.Room.ROOM_KTX
implementation Deps.AndroidX.PAGING
implementation 'com.google.guava:guava:27.0.1-android'
kapt Deps.AndroidX.Room.ROOM_COMPILER
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.5'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.5'
}

2
app/src/main/AndroidManifest.xml

@ -5,6 +5,7 @@
xmlns:tools="http://schemas.android.com/tools"
package="org.myhush.silentdragon">
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />
@ -70,7 +71,6 @@
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>

2053
app/src/main/res/values/word_list_bip39.xml

File diff suppressed because it is too large

11
build.gradle

@ -1,15 +1,19 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
import org.myhush.silentdragon.Deps
buildscript {
ext.kotlin_version = '1.3.50'
repositories {
google()
jcenter()
mavenCentral()
maven {
url 'https://maven.fabric.io/public'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.6.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.android.tools.build:gradle:3.6.0' // does this need 4.0 or another version?
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${Deps.kotlinVersion}"
classpath 'io.fabric.tools:gradle:1.31.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
@ -21,6 +25,7 @@ allprojects {
google()
jcenter()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}

7
buildSrc/build.gradle.kts

@ -0,0 +1,7 @@
plugins {
`kotlin-dsl`
}
repositories {
jcenter()
}

61
buildSrc/src/main/java/org/myhush/silentdragon/Dependencies.kt

@ -0,0 +1,61 @@
package org.myhush.silentdragon
object Deps {
const val kotlinVersion = "1.3.72"
const val compileSdkVersion = 29
const val buildToolsVersion = "29.0.3"
const val minSdkVersion = 17
const val targetSdkVersion = 29
object Kotlin : Version(kotlinVersion) {
val STDLIB = "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$version"
object Coroutines : Version("1.3.2") {
val ANDROID = "org.jetbrains.kotlinx:kotlinx-coroutines-android:$version"
val CORE = "org.jetbrains.kotlinx:kotlinx-coroutines-core:$version"
}
}
object AndroidX {
//const val ANNOTATION = "androidx.annotation:annotation:1.0.0"
const val APPCOMPAT = "androidx.appcompat:appcompat:1.0.0"
const val CONSTRAINT_LAYOUT = "androidx.constraintlayout:constraintlayout:1.1.3"
const val CORE_KTX = "androidx.core:core-ktx:1.3.0"
const val FRAGMENT_KTX = "androidx.fragment:fragment-ktx:1.1.0-beta01"
const val LEGACY = "androidx.legacy:legacy-support-v4:1.0.0"
const val MULTIDEX = "androidx.multidex:multidex:2.0.1"
const val PAGING = "androidx.paging:paging-runtime-ktx:2.1.2"
const val VECTOR_DRAWABLE = "androidx.vectordrawable:vectordrawable:1.0.0"
// for camera function
object CameraX : Version("1.0.0-beta04") {
val CAMERA2 = "androidx.camera:camera-camera2:1.0.0-beta04"
val CORE = "androidx.camera:camera-core:1.0.0-beta04"
}
object Navigation : Version("2.1.0") {
val FRAGMENT_KTX = "androidx.navigation:navigation-fragment-ktx:$version"
val UI_KTX = "androidx.navigation:navigation-ui-ktx:$version"
}
object Room : Version("2.2.5") {
val ROOM_COMPILER = "androidx.room:room-compiler:$version"
val ROOM_KTX = "androidx.room:room-ktx:$version"
}
}
// from Demo App SDK
object Hush {
val ANDROID_WALLET_PLUGINS = "cash.z.ecc.android:zcash-android-wallet-plugins:1.0.0"
val KOTLIN_BIP39 = "cash.z.ecc.android:kotlin-bip39:1.0.0-beta09"
object Sdk : Version("1.1.0-beta02") {
val MAINNET = "cash.z.ecc.android:sdk-mainnet:$version"
//val TESTNET = "cash.z.ecc.android:sdk-testnet:$version"
}
}
object Grpc : Version("1.25.0") {
val ANDROID = "io.grpc:grpc-android:$version"
val OKHTTP = "io.grpc:grpc-okhttp:$version"
val PROTOBUG ="io.grpc:grpc-protobuf-lite:$version"
val STUB = "io.grpc:grpc-stub:$version"
}
}
open class Version(@JvmField val version: String)
Loading…
Cancel
Save