AsyncTask внутри статического метода - хорошая практика кодирования? - PullRequest
8 голосов
/ 08 февраля 2012

В настоящее время у меня есть вспомогательный класс для выполнения элементарных AsyncTasks, таких как следующие. Я вызываю функцию из действия по мере необходимости. Код, кажется, работает нормально, и я не столкнулся с какими-либо проблемами. Но мне было интересно, является ли это хорошей практикой кодирования или были какие-то последствия, о которых я не знаю. Любые отзывы будут с радостью приняты и оценены.

public class OtherUtils {

    public static void updatePromptsOption(final boolean showPrompt, final Context context) {
        new AsyncTask<Void, Void, Void>() {
            @Override
            protected Void doInBackground(Void... params) {
                Editor preferenceEditor = PreferenceManager.getDefaultSharedPreferences(context).edit();
                preferenceEditor.putBoolean(Constants.SHOW_PROMPT, showPrompt).commit();
                return null;
            }

        }.execute();    
     }
}

1 Ответ

2 голосов
/ 08 февраля 2012

Я не вижу в этом ничего плохого. Будучи статической функцией, вы не скрываете неявные ссылки this, которые могут укусить вас позже. Мне кажется, это удобная функция удобства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...