mirror of
https://github.com/advplyr/audiobookshelf-app.git
synced 2025-08-03 09:34:51 +02:00
137 lines
5.2 KiB
Groovy
137 lines
5.2 KiB
Groovy
plugins {
|
|
id 'com.android.application'
|
|
id 'kotlin-android'
|
|
id 'kotlin-kapt'
|
|
}
|
|
|
|
kotlin {
|
|
kotlinDaemonJvmArgs = [
|
|
"-Dfile.encoding=UTF-8",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED",
|
|
"--add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED"
|
|
]
|
|
}
|
|
|
|
android {
|
|
|
|
|
|
namespace 'com.audiobookshelf.app'
|
|
buildFeatures {
|
|
viewBinding true
|
|
}
|
|
kotlinOptions {
|
|
freeCompilerArgs = ['-Xjvm-default=all']
|
|
}
|
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
|
defaultConfig {
|
|
applicationId "com.audiobookshelf.app"
|
|
minSdkVersion rootProject.ext.minSdkVersion
|
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
|
versionCode 95
|
|
versionName "0.9.64-beta"
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
aaptOptions {
|
|
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
|
|
// Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAssets.cpp#61
|
|
ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~'
|
|
}
|
|
}
|
|
buildTypes {
|
|
debug {
|
|
applicationIdSuffix ".debug"
|
|
versionNameSuffix "-debug"
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
}
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
}
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
flatDir{
|
|
dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs'
|
|
}
|
|
mavenCentral()
|
|
}
|
|
|
|
configurations.all {
|
|
resolutionStrategy {
|
|
force("com.google.android.gms:play-services-base:18.0.1")
|
|
force("androidx.appcompat:appcompat:$androidxAppCompatVersion")
|
|
force("androidx.core:core-ktx:$androidx_core_ktx_version")
|
|
force("org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version")
|
|
force("androidx.media:media:$androidx_media_version")
|
|
force("org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version")
|
|
force("org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlin_coroutines_version")
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation "androidx.core:core-splashscreen:$coreSplashScreenVersion"
|
|
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
|
implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
|
|
implementation project(':capacitor-android')
|
|
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
|
|
implementation "androidx.coordinatorlayout:coordinatorlayout:$androidxCoordinatorLayoutVersion"
|
|
|
|
// testImplementation "junit:junit:$junitVersion"
|
|
// androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
|
|
// androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
|
|
implementation project(':capacitor-cordova-android-plugins')
|
|
|
|
implementation "androidx.core:core-ktx:$androidx_core_ktx_version"
|
|
|
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
|
|
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
|
|
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlin_coroutines_version"
|
|
|
|
implementation "androidx.media:media:$androidx_media_version"
|
|
|
|
// Exo Player
|
|
if (findProject(':exoplayer-library-core') != null) {
|
|
implementation project(':exoplayer-library-core')
|
|
implementation project(':exoplayer-library-ui')
|
|
implementation project(':exoplayer-extension-mediasession')
|
|
implementation project(':exoplayer-extension-cast')
|
|
implementation project(':exoplayer-hls')
|
|
} else {
|
|
implementation "com.google.android.exoplayer:exoplayer-core:$exoplayer_version"
|
|
implementation "com.google.android.exoplayer:exoplayer-ui:$exoplayer_version"
|
|
implementation "com.google.android.exoplayer:extension-mediasession:$exoplayer_version"
|
|
implementation "com.google.android.exoplayer:extension-cast:$exoplayer_version"
|
|
implementation "com.google.android.exoplayer:exoplayer-hls:$exoplayer_version"
|
|
}
|
|
|
|
// Glide for images
|
|
implementation "com.github.bumptech.glide:glide:$glide_version"
|
|
kapt "com.github.bumptech.glide:compiler:$glide_version"
|
|
|
|
// Paper NoSQL Db
|
|
implementation 'io.github.pilgr:paperdb:2.7.2'
|
|
|
|
// Simple Storage
|
|
implementation "com.anggrayudi:storage:1.5.4"
|
|
|
|
// OK HTTP
|
|
implementation 'com.squareup.okhttp3:okhttp:4.9.2'
|
|
|
|
// Jackson for JSON
|
|
implementation 'com.fasterxml.jackson.module:jackson-module-kotlin:2.12.2'
|
|
|
|
// FFMPEG-Kit
|
|
implementation 'com.arthenica:ffmpeg-kit-min:4.5.1'
|
|
}
|
|
|
|
apply from: 'capacitor.build.gradle'
|