Enviar dados JSON de um serviço para a interface do usuário no Android

O requisito é: eu tenho um serviço em segundo plano e nesse serviço estou fazendo uma chamada REST para obter dados JSON. Quero enviar os dados JSON para a interface do usuário e atualizar o conteúdo.

Um método que eu posso usar, ou seja, armazenar toda a cadeia JSON em SharedPreferences e recuperar na interface do usuário, mas não acho que seja eficiente.

Alguma idéia pessoal? Eu adicionei um manipulador na interface do usuário para atualizar elementos, mas não estou familiarizado em usá-lo.

Código de chamada REST de amostra:

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(DATA_URL);

httpPost.setHeader("Content-Type", "application/json");

//passes the results to a string builder/entity
StringEntity se = null;
try {
    se = new StringEntity(RequestJSON.toString());
} catch (UnsupportedEncodingException e) {
    e.printStackTrace();
}

//sets the post request as the resulting string
httpPost.setEntity(se);

//Handles what is returned from the page
ResponseHandler responseHandler = new BasicResponseHandler();

try {
    HttpResponse response = (HttpResponse) httpClient.execute(httpPost, responseHandler);

    // response will have JSON data that I need to update in UI

    //Show notification
    showNotification("Update Complete");



} catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (ClientProtocolException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} finally {
    // httpClient = null;
}

questionAnswers(2)

yourAnswerToTheQuestion