Используя ответ одного класса в другой - PullRequest
0 голосов
/ 02 ноября 2010

Я создал приложение, в котором я расширил действие и получил ответ от веб-службы, успешно используя Asynctask. Теперь я хочу выполнить анализ Json этого полученного ответа в другом классе, отличном от основного действия.

Как это можно сделать?Как использовать полученный Ответ основного действия в отдельном классе, потому что в следующем классе я просто хочу выполнить синтаксический анализ с использованием ответа, полученного из основного класса.

Может кто-нибудь дать мне ответ на этот вопрос?

Спасибо, Дэвид

Ответы [ 2 ]

1 голос
/ 02 ноября 2010

Вы можете отправить значение другому классу, передав его конструктору или передав в качестве аргументов любой функции.

Или, если вы хотите передать значение в класс Asynctask

 public class abc extends Activity {

 new AsynctaskClassName.execute(response);      
 }

И Asynctask будет

 public class AsynctaskClassNameextends AsyncTask <String, String, String> {
 protected Z doInBackground(String... res){  
 ...  
  response = res[0]  
 ...   
}

Или, чтобы передать значение другому намерению, лучше передать

    Intent.putExtra("response", response);

и прочитано

 Bundle extras = getIntent().getExtras();
 String response = extras.getString("response");
0 голосов
/ 02 ноября 2010

Вы можете просто создать новый класс

public class Parser
{
public static String rawJSON;
....
}

Теперь в вашей AsyncTask просто сохраните ответ JSON в Parser.rawJSON, как это

protected Z doInBackground(X...x){
...
Parser.rawJSON=responseFromServer(URL);
...
}

и все готово!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...