2012-02-07 6 views
8

Attualmente ho una classe di supporto per eseguire AsyncTasks rudimentali come il seguente. Chiamo la funzione da un'attività come e quando necessario. Il codice sembra funzionare correttamente e non ho riscontrato alcun problema. Ma, mi stavo chiedendo se questa è una buona pratica di codifica o se ci fossero delle ramificazioni di cui non sono a conoscenza. Qualsiasi feedback sarà accettato e apprezzato con piacere.AsyncTask all'interno di un metodo statico: buona pratica di codifica?

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();  
    } 
} 

risposta

2

Non vedo niente di sbagliato nel fare le cose in questo modo. Essendo una funzione statica, non stai nascondendo impliciti riferimenti this che potrebbero morderti in seguito. Sembra una ragionevole funzione di convenienza per me.

+0

Grazie per il chiarimento! – Abhijit