X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/2623e9c1957e95166e99adc81481f91136ac4453..a99f74bd9e09ed9acc74b0fe276ed030b91fc85d:/src/com/owncloud/android/AccountUtils.java diff --git a/src/com/owncloud/android/AccountUtils.java b/src/com/owncloud/android/AccountUtils.java index f38b2e70..dd1893a5 100644 --- a/src/com/owncloud/android/AccountUtils.java +++ b/src/com/owncloud/android/AccountUtils.java @@ -61,7 +61,9 @@ public class AccountUtils { break; } } - } else if (ocAccounts.length != 0) { + } + + if (defaultAccount == null && ocAccounts.length != 0) { // we at least need to take first account as fallback defaultAccount = ocAccounts[0]; } @@ -84,11 +86,26 @@ public class AccountUtils { } - public static void setCurrentOwnCloudAccount(Context context, String name) { - SharedPreferences.Editor appPrefs = PreferenceManager - .getDefaultSharedPreferences(context).edit(); - appPrefs.putString("select_oc_account", name); - appPrefs.commit(); + public static boolean setCurrentOwnCloudAccount(Context context, String accountName) { + boolean result = false; + if (accountName != null) { + Account[] ocAccounts = AccountManager.get(context).getAccountsByType( + AccountAuthenticator.ACCOUNT_TYPE); + boolean found = false; + for (Account account : ocAccounts) { + found = (account.name.equals(accountName)); + if (found) { + SharedPreferences.Editor appPrefs = PreferenceManager + .getDefaultSharedPreferences(context).edit(); + appPrefs.putString("select_oc_account", accountName); + + appPrefs.commit(); + result = true; + break; + } + } + } + return result; } /**