diff --git a/app/build.gradle b/app/build.gradle
index 6767947ee..6910704d0 100755
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -111,7 +111,7 @@ dependencies {
implementation 'com.github.inorichi:junrar-android:634c1f5'
// Android support library
- final support_library_version = '27.0.1'
+ final support_library_version = '27.0.2'
implementation "com.android.support:support-v4:$support_library_version"
implementation "com.android.support:appcompat-v7:$support_library_version"
implementation "com.android.support:cardview-v7:$support_library_version"
@@ -123,7 +123,7 @@ dependencies {
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
- implementation 'com.android.support:multidex:1.0.1'
+ implementation 'com.android.support:multidex:1.0.2'
// ReactiveX
implementation 'io.reactivex:rxandroid:1.2.1'
@@ -154,14 +154,14 @@ dependencies {
// Disk
implementation 'com.jakewharton:disklrucache:2.0.2'
- implementation 'com.github.seven332:unifile:1.0.0'
+ implementation 'com.github.inorichi:unifile:e9ee588'
// HTML parser
implementation 'org.jsoup:jsoup:1.10.2'
// Job scheduling
- implementation 'com.evernote:android-job:1.2.0'
- implementation 'com.google.android.gms:play-services-gcm:11.6.0'
+ implementation 'com.evernote:android-job:1.2.1'
+ implementation 'com.google.android.gms:play-services-gcm:11.6.2'
// Changelog
implementation 'com.github.gabrielemariotti.changeloglib:changelog:2.1.0'
@@ -250,7 +250,7 @@ dependencies {
}
buildscript {
- ext.kotlin_version = '1.1.61'
+ ext.kotlin_version = '1.2.0'
repositories {
mavenCentral()
}
@@ -268,3 +268,6 @@ kotlin {
coroutines 'enable'
}
}
+androidExtensions {
+ experimental = true
+}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index f585dcc84..b3cecc0e1 100755
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -9,6 +9,7 @@
+
diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
index 812434abe..33b37b429 100755
--- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
+++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
@@ -23,6 +23,7 @@ import eu.kanade.tachiyomi.data.database.DatabaseHelper
import eu.kanade.tachiyomi.data.database.models.*
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
+import eu.kanade.tachiyomi.data.track.TrackManager
import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.util.syncChaptersWithSource
@@ -41,6 +42,11 @@ class BackupManager(val context: Context, version: Int = CURRENT_VERSION) {
*/
internal val sourceManager: SourceManager by injectLazy()
+ /**
+ * Tracking manager
+ */
+ internal val trackManager: TrackManager by injectLazy()
+
/**
* Version of parser
*/
@@ -67,18 +73,16 @@ class BackupManager(val context: Context, version: Int = CURRENT_VERSION) {
parser = initParser()
}
- private fun initParser(): Gson {
- return when (version) {
- 1 -> GsonBuilder().create()
- 2 -> GsonBuilder()
- .registerTypeAdapter(MangaTypeAdapter.build())
- .registerTypeHierarchyAdapter(ChapterTypeAdapter.build())
- .registerTypeAdapter(CategoryTypeAdapter.build())
- .registerTypeAdapter(HistoryTypeAdapter.build())
- .registerTypeHierarchyAdapter(TrackTypeAdapter.build())
- .create()
- else -> throw Exception("Json version unknown")
- }
+ private fun initParser(): Gson = when (version) {
+ 1 -> GsonBuilder().create()
+ 2 -> GsonBuilder()
+ .registerTypeAdapter(MangaTypeAdapter.build())
+ .registerTypeHierarchyAdapter(ChapterTypeAdapter.build())
+ .registerTypeAdapter(CategoryTypeAdapter.build())
+ .registerTypeAdapter(HistoryTypeAdapter.build())
+ .registerTypeHierarchyAdapter(TrackTypeAdapter.build())
+ .create()
+ else -> throw Exception("Json version unknown")
}
/**
@@ -300,23 +304,26 @@ class BackupManager(val context: Context, version: Int = CURRENT_VERSION) {
val trackToUpdate = ArrayList