mirror of
https://github.com/mihonapp/mihon.git
synced 2024-10-31 21:20:59 -04:00
0642889b64
* Rewrote Backup * Save automatic backups with datetime * Minor improvements * Remove suggested directories for backup and hardcoded strings. Rename JSON -> Backup * Bugfix * Fix tests * Run restore inside a transaction, use external cache dir for log and other minor changes
68 lines
2.1 KiB
Kotlin
68 lines
2.1 KiB
Kotlin
package eu.kanade.tachiyomi
|
|
|
|
import android.app.Application
|
|
import android.content.Context
|
|
import android.content.res.Configuration
|
|
import android.support.multidex.MultiDex
|
|
import com.evernote.android.job.JobManager
|
|
import eu.kanade.tachiyomi.data.backup.BackupCreatorJob
|
|
import eu.kanade.tachiyomi.data.library.LibraryUpdateJob
|
|
import eu.kanade.tachiyomi.data.updater.UpdateCheckerJob
|
|
import eu.kanade.tachiyomi.util.LocaleHelper
|
|
import org.acra.ACRA
|
|
import org.acra.annotation.ReportsCrashes
|
|
import timber.log.Timber
|
|
import uy.kohesive.injekt.Injekt
|
|
import uy.kohesive.injekt.api.InjektScope
|
|
import uy.kohesive.injekt.registry.default.DefaultRegistrar
|
|
|
|
@ReportsCrashes(
|
|
formUri = "http://tachiyomi.kanade.eu/crash_report",
|
|
reportType = org.acra.sender.HttpSender.Type.JSON,
|
|
httpMethod = org.acra.sender.HttpSender.Method.PUT,
|
|
buildConfigClass = BuildConfig::class,
|
|
excludeMatchingSharedPreferencesKeys = arrayOf(".*username.*", ".*password.*", ".*token.*")
|
|
)
|
|
open class App : Application() {
|
|
|
|
override fun onCreate() {
|
|
super.onCreate()
|
|
Injekt = InjektScope(DefaultRegistrar())
|
|
Injekt.importModule(AppModule(this))
|
|
|
|
if (BuildConfig.DEBUG) Timber.plant(Timber.DebugTree())
|
|
|
|
setupAcra()
|
|
setupJobManager()
|
|
|
|
LocaleHelper.updateConfiguration(this, resources.configuration)
|
|
}
|
|
|
|
override fun attachBaseContext(base: Context) {
|
|
super.attachBaseContext(base)
|
|
if (BuildConfig.DEBUG) {
|
|
MultiDex.install(this)
|
|
}
|
|
}
|
|
|
|
override fun onConfigurationChanged(newConfig: Configuration) {
|
|
super.onConfigurationChanged(newConfig)
|
|
LocaleHelper.updateConfiguration(this, newConfig, true)
|
|
}
|
|
|
|
protected open fun setupAcra() {
|
|
ACRA.init(this)
|
|
}
|
|
|
|
protected open fun setupJobManager() {
|
|
JobManager.create(this).addJobCreator { tag ->
|
|
when (tag) {
|
|
LibraryUpdateJob.TAG -> LibraryUpdateJob()
|
|
UpdateCheckerJob.TAG -> UpdateCheckerJob()
|
|
BackupCreatorJob.TAG -> BackupCreatorJob()
|
|
else -> null
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|