Devuelve el valor de AsyncTask sin el método get ()

Estoy intentando devolver el valor de mi asynctask en DoInBackground, pero llamar al método get () congela mi interfaz de usuario. ¿Cómo puedo volver a escribir mi código en un método de devolución de llamada? :

public class GetUrlDataTask extends AsyncTask<String, Integer, String> {
String response;
HttpUtils util;
@Override
protected String doInBackground(String... params) {
    try {
        util = new HttpUtils(params[0]);
        response = util.getContent();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return response;
}

@Override
protected void onPostExecute(String result) {
    super.onPostExecute(result);
}

En mi actividad obtengo resultados comoresponse = new GetUrlDataTask().execute("site").get;

Respuestas a la pregunta(4)

Su respuesta a la pregunta