apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'kotlinx-serialization' apply plugin: 'kotlin-parcelize' android { compileSdkVersion 30 defaultConfig { applicationId "com.gaurav.avnc" minSdkVersion 21 targetSdkVersion 30 versionCode 1 versionName "0.1.0" javaCompileOptions { annotationProcessorOptions { arguments += ["room.schemaLocation": "$projectDir/roomSchema/".toString()] } } externalNativeBuild { cmake { //We are not using STL arguments '-DANDROID_STL=none' targets 'vncclient', 'native-vnc' } } testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { debug { applicationIdSuffix '.debug' versionNameSuffix ' (debug)' } debugAll { initWith(debug) externalNativeBuild { cmake { arguments '-DAVNC_BUILD_ALL=ON' targets 'turbojpeg-static', 'ssl', 'crypto' } } } release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } releseAll { initWith(release) externalNativeBuild { cmake { arguments '-DAVNC_BUILD_ALL=ON' targets 'turbojpeg-static', 'ssl', 'crypto' } } } } buildFeatures { dataBinding true } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() } externalNativeBuild { cmake { path file('CMakeLists.txt') } } } dependencies { def version = [ appCompat : '1.3.0', navigation: '2.3.0', lifecycle : '2.3.1', room : '2.3.0', material : '1.3.0' ] implementation "androidx.core:core-ktx:1.5.0" implementation "androidx.activity:activity-ktx:1.2.3" implementation 'androidx.fragment:fragment-ktx:1.3.4' implementation "androidx.appcompat:appcompat:$version.appCompat" implementation "com.google.android.material:material:$version.material" implementation 'androidx.dynamicanimation:dynamicanimation:1.0.0' implementation 'androidx.biometric:biometric-ktx:1.2.0-alpha03' implementation 'androidx.preference:preference:1.1.1' implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$version.lifecycle" implementation "androidx.room:room-runtime:$version.room" implementation "androidx.room:room-ktx:$version.room" kapt "androidx.room:room-compiler:$version.room" implementation "androidx.recyclerview:recyclerview:1.2.0" implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation "androidx.drawerlayout:drawerlayout:1.1.1" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.1.0" implementation "org.connectbot:sshlib:2.2.19" testImplementation 'junit:junit:4.13' testImplementation "io.mockk:mockk:1.10.0" androidTestImplementation 'androidx.test:runner:1.3.0' }