RetroMusicPlayer/app/build.gradle
2024-12-06 18:01:47 +05:30

175 lines
No EOL
5.3 KiB
Groovy

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: "androidx.navigation.safeargs.kotlin"
apply plugin: 'kotlin-parcelize'
apply plugin: 'com.google.devtools.ksp'
android {
compileSdk 35
namespace "code.name.monkey.retromusic"
defaultConfig {
minSdk 21
targetSdk 35
vectorDrawables.useSupportLibrary = true
applicationId namespace
versionCode 10620
versionName '6.2.0'
buildConfigField("String", "GOOGLE_PLAY_LICENSING_KEY", "\"${getProperty(getProperties('../public.properties'), 'GOOGLE_PLAY_LICENSE_KEY')}\"")
}
def signingProperties = getProperties('retro.properties')
def releaseSigning
if (signingProperties != null) {
releaseSigning = signingConfigs.create("release") {
storeFile file(getProperty(signingProperties, 'storeFile'))
keyAlias getProperty(signingProperties, 'keyAlias')
storePassword getProperty(signingProperties, 'storePassword')
keyPassword getProperty(signingProperties, 'keyPassword')
}
} else {
releaseSigning = signingConfigs.debug
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig releaseSigning
}
debug {
signingConfig releaseSigning
applicationIdSuffix '.debug'
versionNameSuffix ' DEBUG'
}
}
flavorDimensions = ["version"]
productFlavors {
normal {
dimension "version"
}
fdroid {
dimension "version"
}
}
buildFeatures {
viewBinding true
buildConfig true
}
packagingOptions {
resources {
excludes += ['META-INF/LICENSE', 'META-INF/NOTICE', 'META-INF/java.properties']
}
}
lint {
abortOnError true
warning 'ImpliedQuantity', 'Instantiatable', 'MissingQuantity', 'MissingTranslation', 'StringFormatInvalid'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_21
targetCompatibility JavaVersion.VERSION_21
}
kotlinOptions {
jvmTarget = "21"
}
dependenciesInfo {
includeInApk = false
includeInBundle = false
}
configurations.configureEach {
resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
}
}
def getProperties(String fileName) {
Properties properties = new Properties()
def file = rootProject.file(fileName)
if (file.exists()) {
file.withInputStream { stream -> properties.load(stream) }
} else {
properties = null
}
return properties
}
static def getProperty(Properties properties, String name) {
return properties?.getProperty(name) ?: "$name missing"
}
dependencies {
implementation project(':appthemehelper')
implementation libs.gridLayout
implementation libs.androidx.appcompat
implementation libs.androidx.annotation
implementation libs.androidx.constraintLayout
implementation libs.androidx.recyclerview
implementation libs.androidx.preference.ktx
implementation libs.androidx.core.ktx
implementation libs.androidx.palette.ktx
implementation libs.androidx.mediarouter
//Cast Dependencies
normalImplementation libs.google.play.services.cast.framework
//WebServer by NanoHttpd
normalImplementation libs.nanohttpd
implementation libs.androidx.navigation.runtime.ktx
implementation libs.androidx.navigation.fragment.ktx
implementation libs.androidx.navigation.ui.ktx
implementation libs.androidx.room.runtime
implementation libs.androidx.room.ktx
ksp libs.androidx.room.compiler
implementation libs.androidx.lifecycle.viewmodel.ktx
implementation libs.androidx.lifecycle.livedata.ktx
implementation libs.androidx.lifecycle.common.java8
implementation libs.androidx.core.splashscreen
normalImplementation libs.google.feature.delivery
normalImplementation libs.google.play.review
implementation libs.android.material
implementation libs.retrofit
implementation libs.retrofit.converter.gson
implementation libs.okhttp3.logging.interceptor
implementation libs.afollestad.material.dialogs.core
implementation libs.afollestad.material.dialogs.input
implementation libs.afollestad.material.dialogs.color
implementation libs.afollestad.material.cab
implementation libs.kotlinx.coroutines.android
implementation libs.koin.core
implementation libs.koin.android
implementation libs.glide
ksp libs.glide.ksp
implementation libs.glide.okhttp3.integration
implementation libs.advrecyclerview
implementation libs.fadingedgelayout
implementation libs.keyboardvisibilityevent
implementation libs.jetradarmobile.android.snowfall
implementation libs.chrisbanes.insetter
implementation libs.org.eclipse.egit.github.core
implementation libs.jaudiotagger
normalImplementation libs.android.lab.library
implementation libs.slidableactivity
implementation libs.material.intro
implementation libs.dhaval2404.imagepicker
implementation libs.fastscroll.library
implementation libs.customactivityoncrash
implementation libs.tankery.circularSeekBar
}