Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • release/202005
  • release/202001
  • release/201912
  • release/windows-test/201910
  • release/201908
  • release/201906
  • release/201905
  • release/201904
  • release/201903
  • release/201902
  • release/201901
  • release/201812
  • release/201811
  • release/201808
  • wip/patches_poly_2017/cedryk_doucet/abderahmane_bouziane
  • releases/beta1
  • android/release_460
  • android/release_459
  • android/release_458
  • android/release_457
  • android/release_456
  • android/release_455
  • android/release_454
  • android/release_453
  • android/release_452
  • android/release_451
  • android/release_450
  • android/release_449
  • android/release_448
  • android/release_447
  • android/release_446
  • android/release_445
  • android/release_444
  • android/release_443
  • android/release_442
  • android/release_441
37 results

build.gradle

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    build.gradle 4.30 KiB
    apply plugin: 'com.android.application'
    apply plugin: 'kotlin-android'
    apply plugin: 'kotlin-kapt'
    apply plugin: 'dagger.hilt.android.plugin'
    
    def buildFirebase = project.hasProperty('buildFirebase') || getGradle().getStartParameter().getTaskRequests().toString().contains('Firebase')
    
    android {
        compileSdkVersion 30
        buildToolsVersion '30.0.3'
        ndkVersion '23.0.7272597 rc3'
        defaultConfig {
            minSdkVersion 21
            targetSdkVersion 30
            versionCode 315
            versionName "20210813-01"
        }
        sourceSets {
            main {
                jniLibs.srcDir 'src/main/libs'
            }
        }
    
        buildTypes {
            debug {
                debuggable true
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    
                packagingOptions{
                    doNotStrip "*/armeabi/*.so"
                    doNotStrip "*/armeabi-v7a/*.so"
                    doNotStrip "*/arm64-v8a/*.so"
                    doNotStrip "*/x86/*.so"
                    doNotStrip "*/x86_64/*.so"
                }
            }
            release {
                minifyEnabled true
                proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            }
        }
        buildFeatures {
            viewBinding true
            dataBinding true
        }
        flavorDimensions "push"
        productFlavors {
            noPush {
                dimension "push"
            }
            withFirebase {
                dimension "push"
            }
        }
        signingConfigs {
            config {
                keyAlias 'ring'
                storeFile file('../keystore.bin')
            }
        }
        lintOptions {
            disable 'MissingTranslation'
        }
        splits {
            abi {
                enable true
                reset()
                def sp = archs.split(',')
                include(sp)
                universalApk true
            }
        }
        compileOptions {
            sourceCompatibility = JavaVersion.VERSION_1_8
            targetCompatibility = JavaVersion.VERSION_1_8
        }
        kotlinOptions {
            jvmTarget = "1.8"
        }
    }
    
    dependencies {
        implementation fileTree(include: '*.jar', dir: 'libs')
        implementation project(':libringclient')
    
        implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
        implementation 'androidx.core:core-ktx:1.6.0'
        implementation "androidx.appcompat:appcompat:1.3.1"
        implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
        implementation "androidx.legacy:legacy-support-core-utils:1.0.0"
        implementation "androidx.cardview:cardview:1.0.0"
        implementation "androidx.preference:preference-ktx:1.1.1"
        implementation "androidx.recyclerview:recyclerview:1.2.1"
        implementation "androidx.leanback:leanback:1.2.0-alpha01"
        implementation "androidx.leanback:leanback-preference:1.2.0-alpha01"
        implementation 'androidx.tvprovider:tvprovider:1.0.0'
        implementation "androidx.media:media:1.4.1"
        implementation "androidx.percentlayout:percentlayout:1.0.0"
        implementation "com.google.android.material:material:1.4.0"
        implementation 'com.google.android:flexbox:2.0.1'
        implementation 'org.osmdroid:osmdroid-android:6.1.11'
        implementation "androidx.sharetarget:sharetarget:1.1.0"
    
        // ORM
        implementation 'com.j256.ormlite:ormlite-android:5.6'
    
        // Barcode scanning
        implementation('com.journeyapps:zxing-android-embedded:4.2.0') { transitive = false }
        implementation 'com.google.zxing:core:3.3.3'
    
        implementation 'com.rodolfonavalon:ShapeRippleLibrary:1.0.0'
    
        // Dagger dependency injection
        implementation("com.google.dagger:hilt-android:$hilt_version")
        kapt("com.google.dagger:hilt-android-compiler:$hilt_version")
    
        // Glide
        implementation 'com.github.bumptech.glide:glide:4.12.0'
        kapt 'com.github.bumptech.glide:compiler:4.12.0'
    
        // RxAndroid
        implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'
    
        implementation 'com.jsibbold:zoomage:1.3.1'
        implementation 'com.googlecode.ez-vcard:ez-vcard:0.11.2'
    
        withFirebaseImplementation('com.google.firebase:firebase-messaging:22.0.0') {
            exclude group: 'com.google.firebase', module: 'firebase-core'
            exclude group: 'com.google.firebase', module: 'firebase-analytics'
            exclude group: 'com.google.firebase', module: 'firebase-measurement-connector'
        }
    }
    
    if (buildFirebase) {
        println 'apply plugin ' + buildFirebase
        apply plugin: 'com.google.gms.google-services'
    }