0
0
mirror of https://github.com/MuntashirAkon/Metro.git synced 2024-09-20 03:52:20 +02:00
Metro/app/build.gradle
2023-03-13 10:27:12 +05:30

180 lines
6.6 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 33
namespace "code.name.monkey.retromusic"
defaultConfig {
minSdk 21
targetSdk 32
vectorDrawables.useSupportLibrary = true
applicationId namespace
versionCode 10600
versionName '6.0.4'
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
}
packagingOptions {
resources {
excludes += ['META-INF/LICENSE', 'META-INF/NOTICE', 'META-INF/java.properties']
}
}
lint {
abortOnError true
warning 'ImpliedQuantity', 'Instantiatable', 'MissingQuantity', 'MissingTranslation'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
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 "androidx.gridlayout:gridlayout:1.0.0"
implementation "androidx.appcompat:appcompat:$appcompat_version"
implementation 'androidx.annotation:annotation:1.6.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.recyclerview:recyclerview:1.3.0'
implementation "androidx.preference:preference-ktx:$preference_version"
implementation "androidx.core:core-ktx:$core_version"
implementation 'androidx.palette:palette-ktx:1.0.0'
implementation 'androidx.mediarouter:mediarouter:1.3.1'
//Cast Dependencies
normalImplementation 'com.google.android.gms:play-services-cast-framework:21.2.0'
//WebServer by NanoHttpd
normalImplementation "org.nanohttpd:nanohttpd:2.3.1"
implementation "androidx.navigation:navigation-runtime-ktx:$navigation_version"
implementation "androidx.navigation:navigation-fragment-ktx:$navigation_version"
implementation "androidx.navigation:navigation-ui-ktx:$navigation_version"
def room_version = '2.5.0'
implementation "androidx.room:room-runtime:$room_version"
implementation "androidx.room:room-ktx:$room_version"
ksp "androidx.room:room-compiler:$room_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version"
implementation "androidx.core:core-splashscreen:1.0.0"
normalImplementation 'com.google.android.play:feature-delivery:2.0.1'
normalImplementation 'com.google.android.play:review:2.0.1'
implementation "com.google.android.material:material:$mdc_version"
def retrofit_version = '2.9.0'
implementation "com.squareup.retrofit2:retrofit:$retrofit_version"
implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
implementation 'com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.9'
def material_dialog_version = "3.3.0"
implementation "com.afollestad.material-dialogs:core:$material_dialog_version"
implementation "com.afollestad.material-dialogs:input:$material_dialog_version"
implementation "com.afollestad.material-dialogs:color:$material_dialog_version"
implementation 'com.afollestad:material-cab:2.0.1'
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4"
def koin_version = '3.3.3'
implementation "io.insert-koin:koin-core:$koin_version"
implementation "io.insert-koin:koin-android:$koin_version"
def glide_version = '4.15.0'
implementation "com.github.bumptech.glide:glide:$glide_version"
ksp "com.github.bumptech.glide:ksp:$glide_version"
implementation "com.github.bumptech.glide:okhttp3-integration:$glide_version"
implementation 'com.h6ah4i.android.widget.advrecyclerview:advrecyclerview:1.0.0'
implementation 'com.github.bosphere.android-fadingedgelayout:fadingedgelayout:1.0.0'
implementation 'net.yslibrary.keyboardvisibilityevent:keyboardvisibilityevent:3.0.0-RC3'
implementation 'com.github.jetradarmobile:android-snowfall:1.2.1'
implementation "dev.chrisbanes.insetter:insetter:0.6.1"
implementation 'org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5'
implementation 'com.github.Adonai:jaudiotagger:2.3.15'
normalImplementation 'com.anjlab.android.iab.v3:library:2.0.3'
implementation 'com.r0adkll:slidableactivity:2.1.0'
implementation 'com.heinrichreimersoftware:material-intro:2.0.0'
implementation 'com.github.dhaval2404:imagepicker:2.1'
implementation 'me.zhanghai.android.fastscroll:library:1.2.0'
implementation 'cat.ereza:customactivityoncrash:2.4.0'
implementation 'me.tankery.lib:circularSeekBar:1.4.1'
}