diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/NetworkState.java b/app/src/main/java/com/github/yeriomin/yalpstore/NetworkState.java index fdec4aa7c..1d68875d5 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/NetworkState.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/NetworkState.java @@ -29,12 +29,9 @@ public class NetworkState { continue; } component = component.replace(".", ""); - try { - boolean isZero = Integer.parseInt(component) == 0; - if (!isZero) { - return true; - } - } catch (NumberFormatException e) { + boolean isZero = Util.parseInt(component, 0) == 0; + if (!isZero) { + return true; } } } diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/PreferenceActivity.java b/app/src/main/java/com/github/yeriomin/yalpstore/PreferenceActivity.java index 9e3947aeb..122f164ed 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/PreferenceActivity.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/PreferenceActivity.java @@ -58,11 +58,13 @@ public class PreferenceActivity extends android.preference.PreferenceActivity { } static public int getUpdateInterval(Context context) { - try { - return Integer.parseInt(PreferenceManager.getDefaultSharedPreferences(context).getString(PreferenceActivity.PREFERENCE_BACKGROUND_UPDATE_INTERVAL, "-1")); - } catch (NumberFormatException e) { - return -1; - } + return Util.parseInt( + PreferenceManager.getDefaultSharedPreferences(context).getString( + PreferenceActivity.PREFERENCE_BACKGROUND_UPDATE_INTERVAL, + "-1" + ), + -1 + ); } static public boolean canInstallInBackground(Context context) { diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/UserProvidedAccountDialogBuilder.java b/app/src/main/java/com/github/yeriomin/yalpstore/UserProvidedAccountDialogBuilder.java index e19bcd7c8..0ef38736e 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/UserProvidedAccountDialogBuilder.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/UserProvidedAccountDialogBuilder.java @@ -40,10 +40,7 @@ public class UserProvidedAccountDialogBuilder extends CredentialsDialogBuilder { ad.setTitle(context.getString(R.string.credentials_title)); ad.setCancelable(false); - final AutoCompleteTextView editEmail = (AutoCompleteTextView) ad.findViewById(R.id.email); - editEmail.setAdapter(new ArrayAdapter<>(context, android.R.layout.simple_dropdown_item_1line, getUsedEmails())); - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); - editEmail.setText(prefs.getString(PreferenceActivity.PREFERENCE_EMAIL, this.previousEmail)); + final AutoCompleteTextView editEmail = getEmailInput(ad); final EditText editPassword = (EditText) ad.findViewById(R.id.password); Button buttonExit = (Button) ad.findViewById(R.id.button_exit); @@ -59,19 +56,14 @@ public class UserProvidedAccountDialogBuilder extends CredentialsDialogBuilder { @Override public void onClick(View view) { Context c = view.getContext(); - final String email = editEmail.getText().toString(); - final String password = editPassword.getText().toString(); + String email = editEmail.getText().toString(); + String password = editPassword.getText().toString(); if (TextUtils.isEmpty(email) || TextUtils.isEmpty(password)) { toast(c, R.string.error_credentials_empty); return; } - ad.dismiss(); - UserProvidedCredentialsTask task = new UserProvidedCredentialsTask(); - task.setTaskClone(taskClone); - task.setContext(context); - task.prepareDialog(R.string.dialog_message_logging_in_provided_by_user, R.string.dialog_title_logging_in); - task.execute(email, password); + getUserCredentialsTask().execute(email, password); } }); @@ -79,6 +71,21 @@ public class UserProvidedAccountDialogBuilder extends CredentialsDialogBuilder { return ad; } + private UserProvidedCredentialsTask getUserCredentialsTask() { + UserProvidedCredentialsTask task = new UserProvidedCredentialsTask(); + task.setTaskClone(taskClone); + task.setContext(context); + task.prepareDialog(R.string.dialog_message_logging_in_provided_by_user, R.string.dialog_title_logging_in); + return task; + } + + private AutoCompleteTextView getEmailInput(Dialog ad) { + AutoCompleteTextView editEmail = (AutoCompleteTextView) ad.findViewById(R.id.email); + editEmail.setAdapter(new ArrayAdapter<>(context, android.R.layout.simple_dropdown_item_1line, getUsedEmails())); + editEmail.setText(PreferenceManager.getDefaultSharedPreferences(context).getString(PreferenceActivity.PREFERENCE_EMAIL, this.previousEmail)); + return editEmail; + } + private void addUsedEmail(String email) { Set emailsSet = Util.getStringSet(context, USED_EMAILS_SET); emailsSet.add(email); diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/Util.java b/app/src/main/java/com/github/yeriomin/yalpstore/Util.java index 02ed0f31c..4a6426ce7 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/Util.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/Util.java @@ -86,4 +86,12 @@ public class Util { return !activity.isFinishing(); } } + + static public int parseInt(String intAsString, int defaultValue) { + try { + return Integer.parseInt(intAsString); + } catch (NumberFormatException e) { + return defaultValue; + } + } } diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/fragment/preference/CheckUpdates.java b/app/src/main/java/com/github/yeriomin/yalpstore/fragment/preference/CheckUpdates.java index 40ecb774f..6a9a47d5b 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/fragment/preference/CheckUpdates.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/fragment/preference/CheckUpdates.java @@ -11,6 +11,7 @@ import com.github.yeriomin.yalpstore.CheckSuTask; import com.github.yeriomin.yalpstore.PreferenceActivity; import com.github.yeriomin.yalpstore.R; import com.github.yeriomin.yalpstore.UpdateChecker; +import com.github.yeriomin.yalpstore.Util; public class CheckUpdates extends Abstract { @@ -40,7 +41,7 @@ public class CheckUpdates extends Abstract { checkForUpdates.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { - int interval = parseInt((String) newValue); + int interval = Util.parseInt((String) newValue, 0); UpdateChecker.enable(activity, interval); preference.setSummary(activity.getString(getUpdateSummaryStringId((String) newValue))); alsoDownload.setEnabled(interval > 0); @@ -57,7 +58,7 @@ public class CheckUpdates extends Abstract { final int hour = 1000 * 60 * 60; final int day = hour * 24; final int week = day * 7; - int interval = parseInt(intervalString); + int interval = Util.parseInt(intervalString, 0); switch (interval) { case hour: summaryId = R.string.pref_background_update_interval_hourly; @@ -79,14 +80,6 @@ public class CheckUpdates extends Abstract { return summaryId; } - private int parseInt(String string) { - try { - return Integer.parseInt(string); - } catch (NumberFormatException e) { - return 0; - } - } - private class AlsoInstallOnPreferenceChangeListener implements Preference.OnPreferenceChangeListener { @Override