aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2015-11-23 11:43:44 +0100
committerDominik Schürmann <dominik@dominikschuermann.de>2015-11-23 11:43:44 +0100
commiteda53d42de111bbba199060e77881fa044a71c7a (patch)
tree0630a14e9f41410a3c383a2ae154a7c5e270483a /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java
parentcd601988db41f7651f376ef419be3dd50aaa4e10 (diff)
downloadopen-keychain-eda53d42de111bbba199060e77881fa044a71c7a.tar.gz
open-keychain-eda53d42de111bbba199060e77881fa044a71c7a.tar.bz2
open-keychain-eda53d42de111bbba199060e77881fa044a71c7a.zip
Disable contact sync by default on Android >= 6
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java35
1 files changed, 4 insertions, 31 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java
index 5d97dac8a..f7655f569 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java
@@ -17,10 +17,7 @@
package org.sufficientlysecure.keychain;
-import android.accounts.Account;
-import android.accounts.AccountManager;
import android.app.Application;
-import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
@@ -28,12 +25,11 @@ import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Environment;
-import android.provider.ContactsContract;
-import android.widget.Toast;
import org.spongycastle.jce.provider.BouncyCastleProvider;
import org.sufficientlysecure.keychain.provider.KeychainDatabase;
import org.sufficientlysecure.keychain.provider.TemporaryFileProvider;
+import org.sufficientlysecure.keychain.service.ContactSyncAdapterService;
import org.sufficientlysecure.keychain.service.KeyserverSyncAdapterService;
import org.sufficientlysecure.keychain.ui.ConsolidateDialogActivity;
import org.sufficientlysecure.keychain.ui.util.FormattingUtils;
@@ -93,7 +89,9 @@ public class KeychainApplication extends Application {
brandGlowEffect(getApplicationContext(),
FormattingUtils.getColorFromAttr(getApplicationContext(), R.attr.colorPrimary));
- setupAccountAsNeeded(this);
+ // Add OpenKeychain account to Android to link contacts with keys and keyserver sync
+ KeyserverSyncAdapterService.enableKeyserverSync(this);
+ ContactSyncAdapterService.initContactsSync(this);
// Update keyserver list as needed
Preferences.getPreferences(this).upgradePreferences(this);
@@ -136,31 +134,6 @@ public class KeychainApplication extends Application {
}
}
- /**
- * Add OpenKeychain account to Android to link contacts with keys and keyserver sync
- */
- public static void setupAccountAsNeeded(Context context) {
- try {
- AccountManager manager = AccountManager.get(context);
- Account[] accounts = manager.getAccountsByType(Constants.ACCOUNT_TYPE);
-
- if (accounts.length == 0) {
- Account account = new Account(Constants.ACCOUNT_NAME, Constants.ACCOUNT_TYPE);
- if (manager.addAccountExplicitly(account, null, null)) {
- // for contact sync
- ContentResolver.setIsSyncable(account, ContactsContract.AUTHORITY, 1);
- ContentResolver.setSyncAutomatically(account, ContactsContract.AUTHORITY, true);
- KeyserverSyncAdapterService.enableKeyserverSync(context);
- } else {
- Log.e(Constants.TAG, "Adding account failed!");
- }
- }
- } catch (SecurityException e) {
- Log.e(Constants.TAG, "SecurityException when adding the account", e);
- Toast.makeText(context, R.string.reinstall_openkeychain, Toast.LENGTH_LONG).show();
- }
- }
-
static void brandGlowEffect(Context context, int brandColor) {
// no hack on Android 5
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {