diff --git a/app/src/main/java/eu/kanade/tachiyomi/App.kt b/app/src/main/java/eu/kanade/tachiyomi/App.kt index 76c443708..940a60478 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/App.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/App.kt @@ -11,6 +11,7 @@ import android.content.res.Configuration import android.graphics.Color import android.os.Build import android.os.Environment +import android.webkit.WebView import androidx.core.app.NotificationManagerCompat import androidx.core.content.getSystemService import androidx.lifecycle.Lifecycle @@ -92,6 +93,12 @@ open class App : Application(), LifecycleObserver, ImageLoaderFactory { Security.insertProviderAt(Conscrypt.newProvider(), 1) } + // Avoid potential crashes + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { + val process = getProcessName() + if (packageName != process) WebView.setDataDirectorySuffix(process) + } + Injekt.importModule(AppModule(this)) setupNotificationChannels() diff --git a/app/src/main/java/eu/kanade/tachiyomi/network/interceptor/CloudflareInterceptor.kt b/app/src/main/java/eu/kanade/tachiyomi/network/interceptor/CloudflareInterceptor.kt index ab1666b22..2849d3ed2 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/network/interceptor/CloudflareInterceptor.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/network/interceptor/CloudflareInterceptor.kt @@ -153,6 +153,7 @@ class CloudflareInterceptor(private val context: Context) : Interceptor { webView?.stopLoading() webView?.destroy() + webView = null } // Throw exception if we failed to bypass Cloudflare