как разрешить этот json для Android Studio
и нужно, чтобы каждый элемент индивидуально отображался в текстовом окне
Спасибо вам всем....
только содержание URL
{"s":true,"code":0,"errors":[],"c":"2.54","y":"5.8","i":"2.9","x":"0"}
Моя чья-то активность
public class aFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_a, null);
super.onCreate(savedInstanceState);
new TransTask()
.execute("MYURL");
return view;
}
class TransTask extends AsyncTask<String, Void, String>{
@Override
protected String doInBackground(String... params) {
StringBuilder sb = new StringBuilder();
try {
URL url = new URL(params[0]);
BufferedReader in = new BufferedReader(
new InputStreamReader(url.openStream()));
String line = in.readLine();
while(line!=null){
Log.d("HTTP", line);
sb.append(line);
line = in.readLine();
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Log.d("JSON", s);
parseJSON(s);
}
private void parseJSON(String s) {
try{
JSONObject jsonObject = new JSONObject(s);
String name = jsonObject.getString("s");
String title = jsonObject.getString("code");
String tag = jsonObject.getString("errors");
String info = jsonObject.getString("c");
String info = jsonObject.getString("y");
String inf = jsonObject.getString("i");
String in = jsonObject.getString("x");
}
catch(JSONException e) {
e.printStackTrace();
}
}
почему super.onPostExecute (s); не удается разрешить метод 'onPostExecute (java.lang.string)'
Вы можете установить значения для различных виджетов в методе onPostExecute для своей AsyncTask.
Инициализируйте JSONObject возвращенной строкой. Затем используйте различные методы, такие как getBoolean, getString, getDouble и т. д. Для значений. Вы даже можете получить вложенные объекты или массивы json, используя методы getJSONObject и getJSONArray. Использование JSONObject потребует от вас обработки исключения JSONException в вашем коде.
JSONObject jsonObject = new JSONObject(stringObject);
boolean s = jsonObject.getBoolean("s");
int code = jsonObject.getInt("code");
JSONArray errors = jsonObject.getJSONArray("errors");
//Similar to above
В качестве альтернативы вы также можете использовать библиотеку, такую как GSON, для десериализации вашего json.
Ваш метод onPostExecute, похоже, выходит за рамки AysncTask. Иерархически он должен быть на том же уровне, что и метод doInBackground.
Большое спасибо, я обновил свой код, я не могу установить пост в textview1 ~ 7`, где и как?