Я получаю некоторую информацию из API с помощью json и добавляю ее в некоторые переменные. Проблема в том, что я не знаю, как использовать их в других классах или около того. Вот мой класс AsyncTask
class TestJson extends AsyncTask<String,String,String> {
public static String aJsonString;
@Override
protected String doInBackground(String... strings) {
ArrayList<Geocode> geocodes = null;
DefaultHttpClient httpclient = new DefaultHttpClient(new BasicHttpParams());
HttpPost httppost = new HttpPost("https://developers.zomato.com/api/v2.1/geocode?lat=40.712776&lon=-74.005974");
httppost.setHeader("user-key", "mykey");
InputStream inputStream = null;
String result = null;
try {
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
inputStream = entity.getContent();
// json is UTF-8 by default
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
result = sb.toString();
JSONObject jObject = new JSONObject(result);
JSONObject jsonObject= (JSONObject) jObject.get("location");
//for nested json objects
String title=(String)jsonObject.get("city_name");
aJsonString = jObject.getString("link");
} catch (Exception e) {
} finally {
try {
if (inputStream != null) inputStream.close();
} catch (Exception squish) {
}
}
try {
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
Например, я сделал aJsonString
статичным, но если я назову его где-нибудь еще, это даст мне ноль. Есть идеи на этот счет?