Fourth solution
AsyncTask solution