From 9ab91270050ca00632e1590c92903f57387fd641 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Wed, 18 Apr 2018 15:31:46 +0200 Subject: [PATCH] Call TemporaryFileProvider.cleanup() in Handler This *might* fix Samsung problems. Let's see if it reduces crash reports. See also: https://stackoverflow.com/questions/41474623/sporadic-illegalargumentexception-unknown-url-content --- .../org/sufficientlysecure/keychain/KeychainApplication.java | 3 ++- .../keychain/provider/TemporaryFileProvider.java | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java index 8e75f6d32..163cd6354 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java @@ -29,6 +29,7 @@ import android.graphics.Bitmap; import android.graphics.PorterDuff; import android.graphics.drawable.Drawable; import android.os.Build; +import android.os.Handler; import android.support.annotation.Nullable; import android.widget.Toast; @@ -115,7 +116,7 @@ public class KeychainApplication extends Application { TlsCertificatePinning.addPinnedCertificate("api.keybase.io", getAssets(), "api.keybase.io.CA.cer"); TlsCertificatePinning.addPinnedCertificate("keyserver.ubuntu.com", getAssets(), "DigiCertGlobalRootCA.cer"); - TemporaryFileProvider.cleanUp(this); + new Handler().post(() -> TemporaryFileProvider.cleanUp(getApplicationContext())); } /** diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/TemporaryFileProvider.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/TemporaryFileProvider.java index e164ac989..8a9ee7738 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/TemporaryFileProvider.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/TemporaryFileProvider.java @@ -111,6 +111,7 @@ public class TemporaryFileProvider extends ContentProvider { } public static int cleanUp(Context context) { + Timber.d("Cleaning up temporary files…"); return context.getContentResolver().delete( CONTENT_URI, TemporaryFileColumns.COLUMN_TIME + "< ?",