diff --git a/app/src/main/java/ru/vtosters/lite/ui/fragments/AccountsFragment.java b/app/src/main/java/ru/vtosters/lite/ui/fragments/AccountsFragment.java index 6fd2259a4..d92d8f2b5 100644 --- a/app/src/main/java/ru/vtosters/lite/ui/fragments/AccountsFragment.java +++ b/app/src/main/java/ru/vtosters/lite/ui/fragments/AccountsFragment.java @@ -2,12 +2,9 @@ package ru.vtosters.lite.ui.fragments; import static android.content.Context.MODE_PRIVATE; import static ru.vtosters.lite.utils.Helper.GetContext; -import static ru.vtosters.lite.utils.Helper.GetPreferences; -import static ru.vtosters.lite.utils.Helper.getUserLastName; import android.content.SharedPreferences; import android.os.Bundle; -import android.support.v7.preference.Preference; import com.vk.audio.AudioMessageUtils; import com.vk.auth.api.VKAccount; @@ -20,8 +17,6 @@ import com.vtosters.lite.auth.VKAccountManager; import com.vtosters.lite.fragments.MaterialPreferenceToolbarFragment; import com.vtosters.lite.im.ImEngineProvider; -import ru.vtosters.lite.tgs.TGPref; -import ru.vtosters.lite.tgs.TGRoot; import ru.vtosters.lite.ui.PreferencesUtil; import ru.vtosters.lite.utils.AccountManager; import ru.vtosters.lite.utils.Helper; @@ -32,18 +27,12 @@ public class AccountsFragment extends MaterialPreferenceToolbarFragment { public void b(Bundle bundle) { super.b(bundle); - ToastUtils.a(AccountManager.getAvalibleAcc()); - int vtosterXml = Helper.GetContext().getResources().getIdentifier("empty", "xml", Helper.GetContext().getPackageName()); this.a(vtosterXml); PreferencesUtil.addPreferenceCategory(this, "Аккаунты"); - PreferencesUtil.addListPreference(this, "account", "", "Выберите аккаунт", new CharSequence[]{ - AccountManager.getName("0"), AccountManager.getName("1") - }, new String[]{ - "0", "1" - }); + PreferencesUtil.addListPreference(this, "account", "", "Выберите аккаунт", AccountManager.getAccAmountNames(), AccountManager.getAccAmount()); a("account").b(AccountManager.getCurrentAccountName()); @@ -62,7 +51,7 @@ public class AccountsFragment extends MaterialPreferenceToolbarFragment { PreferencesUtil.addPreference(this, "newacc", "Добавить аккаунт", "", null, preference -> { SharedPreferences sharedPrefs = GetContext().getSharedPreferences("com.vtosters.lite_preferences", MODE_PRIVATE); SharedPreferences.Editor editor = sharedPrefs.edit(); - editor.putString("account", Integer.toString(AccountManager.getAvalibleAccInt() + 1)); + editor.putString("account", Integer.toString(AccountManager.getAvalibleAcc())); editor.commit(); VKImageLoader.b(); @@ -75,12 +64,10 @@ public class AccountsFragment extends MaterialPreferenceToolbarFragment { ToastUtils.a("Перезапустите приложение"); return false; }); - } @Override public int aq() { return Helper.GetContext().getResources().getIdentifier("sett_account", "string", Helper.GetContext().getPackageName()); } - } diff --git a/app/src/main/java/ru/vtosters/lite/utils/AccountManager.java b/app/src/main/java/ru/vtosters/lite/utils/AccountManager.java index a9ffda5d5..402251109 100644 --- a/app/src/main/java/ru/vtosters/lite/utils/AccountManager.java +++ b/app/src/main/java/ru/vtosters/lite/utils/AccountManager.java @@ -5,6 +5,7 @@ import static ru.vtosters.lite.utils.Helper.GetContext; import android.content.SharedPreferences; +import java.util.ArrayList; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -42,7 +43,7 @@ public class AccountManager { return "err"; } - public static String getAvalibleAcc() { + public static int getAvalibleAcc() { int intg = 0; while (true) { if (getName(Integer.toString(intg)) != "err") { @@ -50,19 +51,38 @@ public class AccountManager { } else { break; } - }; - return Integer.toString(intg); - } - - public static int getAvalibleAccInt() { - int intg = 0; - while (true) { - if (getName(Integer.toString(intg)) != "err") { - intg++; - } else { - break; - } - }; + } + ; return intg; } + + public static CharSequence[] getAccAmountNames() { + int intg = 0; + ArrayList list = new ArrayList(); + while (true) { + if (getName(Integer.toString(intg)) != "err") { + list.add(getName(Integer.toString(intg))); + intg++; + } else { + break; + } + }; + final CharSequence[] charSequenceItems = list.toArray(new CharSequence[list.size()]); + return charSequenceItems; + } + + public static CharSequence[] getAccAmount() { + int intg = 0; + ArrayList list = new ArrayList(); + while (true) { + if (getName(Integer.toString(intg)) != "err") { + list.add(Integer.toString(intg)); + intg++; + } else { + break; + } + }; + final CharSequence[] charSequenceItems = list.toArray(new CharSequence[list.size()]); + return charSequenceItems; + } } diff --git a/smali/smali_classes2/com/vtosters/lite/fragments/SettingsListFragment$b.smali b/smali/smali_classes2/com/vtosters/lite/fragments/SettingsListFragment$b.smali index c02bbd252..f10c8eb2c 100644 --- a/smali/smali_classes2/com/vtosters/lite/fragments/SettingsListFragment$b.smali +++ b/smali/smali_classes2/com/vtosters/lite/fragments/SettingsListFragment$b.smali @@ -122,35 +122,6 @@ if-eqz v5, :cond_7 - new-instance v5, Lcom/vtosters/lite/fragments/SettingsListFragment$a; - - const v6, 0x7f08063e - - iget-object v7, p0, Lcom/vtosters/lite/fragments/SettingsListFragment$b;->a:Lcom/vtosters/lite/fragments/SettingsListFragment; - - invoke-static {v7}, Lcom/vtosters/lite/fragments/SettingsListFragment;->a(Lcom/vtosters/lite/fragments/SettingsListFragment;)I - - move-result v7 - - # const v8, 0x7f110fef - - # invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; - - # move-result-object v8 - - const-string v8, "Мультиаккаунт" - - const-class v9, Lru/vtosters/lite/ui/fragments/AccountsFragment; - - invoke-direct {v5, v6, v7, v8, v9}, Lcom/vtosters/lite/fragments/SettingsListFragment$a;->(IILjava/lang/Object;Ljava/lang/Class;)V - - invoke-static {v4, v5}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->a(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a; - - move-result-object v5 - - invoke-virtual {v0, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z - - new-instance v5, Lcom/vtosters/lite/fragments/SettingsListFragment$a; const v6, 0x7f0802d3 @@ -1129,6 +1100,58 @@ invoke-virtual {v0, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z + + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; + + move-result-object v2 + + invoke-static {v3, v2}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->d(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a; + + move-result-object v2 + + invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z + + + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; + + move-result-object v2 + + invoke-static {v3, v2}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->c(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a; + + move-result-object v2 + + invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z + + + new-instance v5, Lcom/vtosters/lite/fragments/SettingsListFragment$a; + + const v6, 0x7f08063e + + iget-object v7, p0, Lcom/vtosters/lite/fragments/SettingsListFragment$b;->a:Lcom/vtosters/lite/fragments/SettingsListFragment; + + invoke-static {v7}, Lcom/vtosters/lite/fragments/SettingsListFragment;->a(Lcom/vtosters/lite/fragments/SettingsListFragment;)I + + move-result v7 + + const v8, 0x7f110ff8 + + invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; + + move-result-object v8 + + const-string v8, "Аккаунты" + + const-class v9, Lru/vtosters/lite/ui/fragments/AccountsFragment; + + invoke-direct {v5, v6, v7, v8, v9}, Lcom/vtosters/lite/fragments/SettingsListFragment$a;->(IILjava/lang/Object;Ljava/lang/Class;)V + + invoke-static {v4, v5}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->a(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a; + + move-result-object v5 + + invoke-virtual {v0, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z + + .line 252 invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;