apply plugin: 'com.android.application' apply plugin: 'kotlin-android' def acraSecretsPropertiesFile = rootProject.file("acra.properties") def acraSecretsProperties = new Properties() acraSecretsProperties.load(new FileInputStream(acraSecretsPropertiesFile)) android { compileSdkVersion 33 defaultConfig { applicationId "io.github.chronosx88.yggdrasil" minSdkVersion 15 targetSdkVersion 33 versionCode 43 versionName "2.1.7" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" setProperty("archivesBaseName", project.getParent().name+"-"+versionName) buildConfigField("String", "ACRA_BACKEND_URL", acraSecretsProperties['ACRA_BACKEND_URL']) buildConfigField("String", "ACRA_LOGIN", acraSecretsProperties['ACRA_LOGIN']) buildConfigField("String", "ACRA_PASSWORD", acraSecretsProperties['ACRA_PASSWORD']) multiDexEnabled true } signingConfigs { release { storeFile file(KEYSTORE_FILE_PATH) storePassword System.getenv("KEYSTORE_PASSWORD") keyAlias System.getenv("KEY_ALIAS") keyPassword System.getenv("KEY_PASSWORD") } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release } } ndkVersion "23.2.8568313" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } packagingOptions { resources { excludes += ['META-INF/LICENSE', 'META-INF/NOTICE'] } } buildFeatures { viewBinding true } lint { abortOnError false checkReleaseBuilds false } namespace 'org.yggdrasil.app.crispa' } task ndkBuild(type: Exec) { def rootDir = project.rootDir workingDir = new File(rootDir,"yggdrasil") commandLine 'make' } gradle.projectsEvaluated { tasks.compileDebugKotlin.dependsOn(ndkBuild) } dependencies { implementation 'ch.acra:acra-http:5.9.6' implementation 'ch.acra:acra-dialog:5.9.6' implementation fileTree(dir: 'libs', include: ['*.jar']) implementation project(path: ':yggdrasil') implementation 'androidx.appcompat:appcompat:1.7.0-alpha01' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.preference:preference-ktx:1.2.0' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' implementation 'com.google.android.material:material:1.8.0-beta01' implementation 'com.google.code.gson:gson:2.9.0' implementation 'com.hbb20:ccp:2.4.0' implementation 'com.vincentbrison.openlibraries.android:dualcache:3.1.1' implementation 'com.vincentbrison.openlibraries.android:dualcache-jsonserializer:3.1.1' implementation 'androidx.work:work-runtime-ktx:2.7.1' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test:runner:1.5.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.0' }