import com.android.build.OutputFile plugins { id "com.jetbrains.python.envs" version "0.0.26" } apply plugin: 'com.android.application' apply from: 'variables.gradle' apply plugin: 'kotlin-android' apply plugin: 'applovin-quality-service' applovin { apiKey project.ext.applovin_key } android { compileSdkVersion project.ext.compile_sdk_version ndkVersion project.ext.ndk_version defaultConfig { applicationId project.ext.application_id minSdkVersion project.ext.min_sdk_version targetSdkVersion project.ext.target_sdk_version versionCode project.ext.vcode versionName project.ext.vname ndk { debugSymbolLevel project.ext.debugSymbolLevel } } kotlinOptions { jvmTarget = project.ext.jvmTarget } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } buildTypes { release { minifyEnabled project.ext.minifyEnabled shrinkResources project.ext.shrinkResources proguardFiles getDefaultProguardFile(project.ext.proguard_file), project.ext.proguard_rule } } flavorDimensions project.ext.dimen productFlavors { orion { dimension project.ext.dimen } } splits { abi { enable project.ext.splitEnabled reset() include project.ext.abi_x86, project.ext.abi_x86_x64, project.ext.abi_arm64, project.ext.abi_armeabi } } bundle { abi { enableSplit = true } } sourceSets { main { res.srcDirs = project.ext.resource_directories jniLibs.srcDirs = ['src/main/jniLibs'] } orionRelease.root = project.ext.releaseRoot } namespace project.ext.application_id } dependencies { /* File Support Dependencies */ implementation fileTree(dir: 'libs', include: ['*.jar']) implementation files('libs/httpclientandroidlib-1.2.1.jar') /* Android Support Repository Dependencies */ implementation 'com.google.android.material:material:1.8.0' implementation 'org.apache.commons:commons-text:1.3' /* Firefox ABI Splits */ implementation "org.mozilla.components:browser-engine-gecko:108.2.0" implementation "org.mozilla.components:browser-icons:100.0.9" implementation "org.mozilla.components:concept-fetch:108.2.0" implementation "org.mozilla.components:concept-base:108.2.0" implementation "org.mozilla.components:support-utils:108.2.0" /* Analytics */ implementation 'com.flurry.android:analytics:14.0.0' /* Ads Manager */ implementation 'com.applovin:applovin-sdk:11.7.0' implementation 'com.facebook.android:audience-network-sdk:6.12.0' implementation 'com.applovin.mediation:facebook-adapter:6.12.0.1' /* Orbot Service */ implementation project(path: ':orbotmanager') /* Helper Libraries */ implementation 'androidx.appcompat:appcompat:1.6.0' implementation "androidx.media:media:1.6.0" implementation 'com.android.volley:volley:1.2.1' implementation "net.zetetic:android-database-sqlcipher:4.4.3" implementation project(':xcrash_lib') } /* Automated APK Generation */ android.applicationVariants.all { variant -> def buildType = variant.buildType.name if (buildType == project.ext.buildType) { def baseVersionCode = project.ext.vcode variant.outputs.each { output -> def abi = output.getFilter(OutputFile.ABI) def versionCodeOverride = baseVersionCode if (abi == project.ext.abi_x86) { versionCodeOverride = versionCodeOverride + 3 } else if (abi == project.ext.abi_x86_x64) { versionCodeOverride = versionCodeOverride + 2 } else if (abi == project.ext.abi_arm64) { versionCodeOverride = versionCodeOverride + 1 } else if (abi == project.ext.abi_armeabi) { versionCodeOverride = versionCodeOverride + 0 } else { throw new RuntimeException(project.ext.abi_unknown + abi) } output.versionCodeOverride = versionCodeOverride } } }