change to asynTask (compatibility android 3.x)