mirror of
https://github.com/tachiyomiorg/tachiyomi.git
synced 2024-11-04 09:15:07 +01:00
afe69fa2ed
Tracked no longer shows manga tracking for services you've logged out of Added logout button to tracking settings If there's a single result in the track dialog for manga, it is selected so all you need to do it press "Track"
274 lines
9.0 KiB
Groovy
274 lines
9.0 KiB
Groovy
import java.text.SimpleDateFormat
|
|
|
|
apply plugin: 'com.android.application'
|
|
apply plugin: 'kotlin-android'
|
|
apply plugin: 'kotlin-android-extensions'
|
|
apply plugin: 'kotlin-kapt'
|
|
apply plugin: 'com.github.zellius.shortcut-helper'
|
|
|
|
shortcutHelper.filePath = './shortcuts.xml'
|
|
|
|
ext {
|
|
// Git is needed in your system PATH for these commands to work.
|
|
// If it's not installed, you can return a random value as a workaround
|
|
getCommitCount = {
|
|
return 'git rev-list --count HEAD'.execute().text.trim()
|
|
// return "1"
|
|
}
|
|
|
|
getGitSha = {
|
|
return 'git rev-parse --short HEAD'.execute().text.trim()
|
|
// return "1"
|
|
}
|
|
|
|
getBuildTime = {
|
|
def df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'")
|
|
df.setTimeZone(TimeZone.getTimeZone("UTC"))
|
|
return df.format(new Date())
|
|
}
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion 29
|
|
buildToolsVersion '29.0.2'
|
|
publishNonDefault true
|
|
|
|
defaultConfig {
|
|
applicationId "eu.kanade.tachiyomi"
|
|
minSdkVersion 21
|
|
targetSdkVersion 29
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
versionCode 55
|
|
versionName '0.9.7'
|
|
|
|
buildConfigField "String", "COMMIT_COUNT", "\"${getCommitCount()}\""
|
|
buildConfigField "String", "COMMIT_SHA", "\"${getGitSha()}\""
|
|
buildConfigField "String", "BUILD_TIME", "\"${getBuildTime()}\""
|
|
buildConfigField "boolean", "INCLUDE_UPDATER", "false"
|
|
|
|
vectorDrawables.useSupportLibrary = true
|
|
|
|
multiDexEnabled true
|
|
|
|
ndk {
|
|
abiFilters "armeabi-v7a", "arm64-v8a", "x86"
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
debug {
|
|
versionNameSuffix "-${getCommitCount()}"
|
|
applicationIdSuffix ".debug"
|
|
}
|
|
release {
|
|
applicationIdSuffix = '.j2k'
|
|
}
|
|
}
|
|
|
|
flavorDimensions "default"
|
|
|
|
productFlavors {
|
|
standard {
|
|
buildConfigField "boolean", "INCLUDE_UPDATER", "true"
|
|
dimension "default"
|
|
}
|
|
fdroid {
|
|
dimension "default"
|
|
}
|
|
dev {
|
|
resConfigs "en"
|
|
dimension "default"
|
|
}
|
|
}
|
|
|
|
packagingOptions {
|
|
exclude 'META-INF/DEPENDENCIES'
|
|
exclude 'LICENSE.txt'
|
|
exclude 'META-INF/LICENSE'
|
|
exclude 'META-INF/LICENSE.txt'
|
|
exclude 'META-INF/NOTICE'
|
|
}
|
|
|
|
lintOptions {
|
|
abortOnError false
|
|
checkReleaseBuilds false
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility = 1.8
|
|
targetCompatibility = 1.8
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = "1.8"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
|
|
// Modified dependencies
|
|
implementation 'com.github.inorichi:subsampling-scale-image-view:ac0dae7'
|
|
implementation 'com.github.inorichi:junrar-android:634c1f5'
|
|
|
|
// Android support library
|
|
implementation 'androidx.appcompat:appcompat:1.1.0'
|
|
implementation 'androidx.cardview:cardview:1.0.0'
|
|
implementation 'com.google.android.material:material:1.0.0'
|
|
implementation 'androidx.recyclerview:recyclerview:1.1.0'
|
|
implementation 'androidx.preference:preference:1.1.0'
|
|
implementation 'androidx.annotation:annotation:1.1.0'
|
|
implementation 'androidx.browser:browser:1.2.0'
|
|
implementation 'androidx.biometric:biometric:1.0.1'
|
|
|
|
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
|
|
|
|
implementation 'androidx.multidex:multidex:2.0.1'
|
|
|
|
standardImplementation 'com.google.firebase:firebase-core:17.2.1'
|
|
|
|
final lifecycle_version = "2.1.0"
|
|
implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle_version"
|
|
implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version"
|
|
|
|
// ReactiveX
|
|
implementation 'io.reactivex:rxandroid:1.2.1'
|
|
implementation 'io.reactivex:rxjava:1.3.8'
|
|
implementation 'com.jakewharton.rxrelay:rxrelay:1.2.0'
|
|
implementation 'com.f2prateek.rx.preferences:rx-preferences:1.0.2'
|
|
implementation 'com.github.pwittchen:reactivenetwork:0.13.0'
|
|
|
|
// Network client
|
|
final okhttp_version = "4.2.1"
|
|
implementation "com.squareup.okhttp3:okhttp:$okhttp_version"
|
|
implementation "com.squareup.okhttp3:logging-interceptor:$okhttp_version"
|
|
implementation 'com.squareup.okio:okio:2.4.0'
|
|
|
|
// REST
|
|
final retrofit_version = '2.6.2'
|
|
implementation "com.squareup.retrofit2:retrofit:$retrofit_version"
|
|
implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
|
|
implementation "com.squareup.retrofit2:adapter-rxjava:$retrofit_version"
|
|
|
|
// JSON
|
|
implementation 'com.google.code.gson:gson:2.8.5'
|
|
implementation 'com.github.salomonbrys.kotson:kotson:2.5.0'
|
|
|
|
// JavaScript engine
|
|
implementation 'com.squareup.duktape:duktape-android:1.2.0'
|
|
|
|
// Disk
|
|
implementation 'com.jakewharton:disklrucache:2.0.2'
|
|
implementation 'com.github.inorichi:unifile:e9ee588'
|
|
|
|
// HTML parser
|
|
implementation 'org.jsoup:jsoup:1.12.1'
|
|
|
|
// Job scheduling
|
|
implementation 'com.evernote:android-job:1.2.5'
|
|
implementation 'com.google.android.gms:play-services-gcm:17.0.0'
|
|
|
|
// Changelog
|
|
implementation 'com.github.gabrielemariotti.changeloglib:changelog:2.1.0'
|
|
|
|
// Database
|
|
implementation 'androidx.sqlite:sqlite:2.0.1'
|
|
implementation 'com.github.inorichi.storio:storio-common:8be19de@aar'
|
|
implementation 'com.github.inorichi.storio:storio-sqlite:8be19de@aar'
|
|
implementation 'io.requery:sqlite-android:3.25.2'
|
|
|
|
// Model View Presenter
|
|
final nucleus_version = '3.0.0'
|
|
implementation "info.android15.nucleus:nucleus:$nucleus_version"
|
|
implementation "info.android15.nucleus:nucleus-support-v7:$nucleus_version"
|
|
|
|
// Dependency injection
|
|
implementation "com.github.inorichi.injekt:injekt-core:65b0440"
|
|
|
|
// Image library
|
|
final glide_version = '4.11.0'
|
|
implementation "com.github.bumptech.glide:glide:$glide_version"
|
|
implementation "com.github.bumptech.glide:okhttp3-integration:$glide_version"
|
|
kapt "com.github.bumptech.glide:compiler:$glide_version"
|
|
|
|
// Transformations
|
|
implementation 'jp.wasabeef:glide-transformations:4.0.0'
|
|
|
|
// Logging
|
|
implementation 'com.jakewharton.timber:timber:4.7.1'
|
|
|
|
// Crash reports
|
|
implementation 'ch.acra:acra:4.9.2'
|
|
|
|
// UI
|
|
implementation 'com.dmitrymalkovich.android:material-design-dimens:1.4'
|
|
implementation 'com.github.dmytrodanylyk.android-process-button:library:1.0.4'
|
|
implementation 'eu.davidea:flexible-adapter:5.1.0'
|
|
implementation 'eu.davidea:flexible-adapter-ui:1.0.0'
|
|
implementation 'com.nononsenseapps:filepicker:2.5.2'
|
|
implementation 'com.github.amulyakhare:TextDrawable:558677e'
|
|
implementation 'com.afollestad.material-dialogs:core:3.1.1'
|
|
implementation 'com.afollestad.material-dialogs:input:3.1.1'
|
|
implementation 'me.zhanghai.android.systemuihelper:library:1.0.0'
|
|
implementation 'com.nightlynexus.viewstatepageradapter:viewstatepageradapter:1.1.0'
|
|
implementation 'com.github.mthli:Slice:v1.2'
|
|
implementation 'me.gujun.android.taggroup:library:1.4@aar'
|
|
implementation 'com.github.chrisbanes:PhotoView:2.3.0'
|
|
implementation 'com.github.carlosesco:DirectionalViewPager:a844dbca0a'
|
|
|
|
// Conductor
|
|
implementation 'com.bluelinelabs:conductor:2.1.5'
|
|
implementation ("com.bluelinelabs:conductor-support:2.1.5") {
|
|
exclude group: "com.android.support"
|
|
}
|
|
implementation 'com.github.inorichi:conductor-support-preference:a32c357'
|
|
|
|
// RxBindings
|
|
final rxbindings_version = '1.0.1'
|
|
implementation "com.jakewharton.rxbinding:rxbinding-kotlin:$rxbindings_version"
|
|
implementation "com.jakewharton.rxbinding:rxbinding-appcompat-v7-kotlin:$rxbindings_version"
|
|
implementation "com.jakewharton.rxbinding:rxbinding-support-v4-kotlin:$rxbindings_version"
|
|
implementation "com.jakewharton.rxbinding:rxbinding-recyclerview-v7-kotlin:$rxbindings_version"
|
|
|
|
// Tests
|
|
testImplementation 'junit:junit:4.12'
|
|
testImplementation 'org.assertj:assertj-core:1.7.1'
|
|
testImplementation 'org.mockito:mockito-core:1.10.19'
|
|
|
|
final robolectric_version = '3.1.4'
|
|
testImplementation "org.robolectric:robolectric:$robolectric_version"
|
|
testImplementation "org.robolectric:shadows-multidex:$robolectric_version"
|
|
testImplementation "org.robolectric:shadows-play-services:$robolectric_version"
|
|
|
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
|
|
final coroutines_version = '1.3.2'
|
|
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version"
|
|
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version"
|
|
|
|
// Text distance
|
|
implementation 'info.debatty:java-string-similarity:1.2.1'
|
|
}
|
|
|
|
buildscript {
|
|
ext.kotlin_version = '1.3.61'
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
|
classpath "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
androidExtensions {
|
|
experimental = true
|
|
}
|
|
|
|
if (getGradle().getStartParameter().getTaskRequests().toString().contains("Standard")) {
|
|
apply plugin: 'com.google.gms.google-services'
|
|
}
|