0
{"futsal_id":"59",
"description":[{
"futsal_id":"59",
"futsal_desc":"This is great futsal"}],
"features":[{"futsal_id":"59","futsal_feat":"free 4 bottles of water"}],
"dimension":null,
"no_of_futsal":null,
"opening_hrs":null,
"price_weekdays_price1":[{
"futsal_id":"59",
"price_id":"1",
"start_time":"6am",
"end_time":"10am",
"price":"1000"}],
"price_weekdays_price2":[{
"futsal_id":"59",
"price_id":"2",
"start_time":"10am",
"end_time":"3pm",
"price":"1200"}],
"price_weekdays_price3":[{
"futsal_id":"59",
"price_id":"3",
"start_time":"3pm",
"end_time":"9pm",
"price":"1300"}],
"price_weekend_price1":null,
"price_weekend_price2":null,
"price_weekend_price3":null,
"images":[],
"image_count":0,
"news":null}
這是來自PHP的My JsonResponse。 由於這些響應中存在空數據,我無法在android studio中獲得任何響應。 如果不存在空數據,則response.getString()具有所有這些數據,但response.getString由於空數據而沒有響應。 可能是什麼問題?No JsonResponse即使單個數據爲空時也可獲得
class ShowResult extends AsyncTask<Void, Void, String[]> {
@Override
protected void onPreExecute() {
super.onPreExecute();
pd.show();
}
@Override
protected void onPostExecute(String[] aVoid) {
super.onPostExecute(aVoid);
pd.cancel();
txt.setText(result[0]);
}
@Override
protected String[] doInBackground(Void... params) {
try {
Log.d("sssssssssssssss", "sadf");
URL url = new URL("http://futsalgroove.s4generation.com/app/android_c/show_details/");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setDoOutput(true);
urlConnection.setRequestMethod("POST");
String urlParameters = "id=" + bundle.getString("id");
//sending the parameter using DataOutputStream
DataOutputStream wr = new DataOutputStream(urlConnection.getOutputStream());
wr.writeBytes(urlParameters);
wr.flush();
wr.close();
//Reading the data or response from the PHP file
BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
Log.d("sssssssssssssss", "iii" + in);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
Log.d("Detail Outputss", inputLine);
}
in.close();
//Using the JasonObject from php
Log.d("Detail Outputsss", "" + response.toString());
JSONObject json = new JSONObject(response.toString());
JSONArray description = json.getJSONArray("description");
JSONObject descObj = description.getJSONObject(0);
result[0] = descObj.getString("futsal_desc");
Log.d("DetailOut","" + result[0]);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
}
return result;
}
}
使用Newtonsoft.Json.Linq請添加一些更多的細節,並使其更具可讀性 – alamin
請假出來的android格式的JSON代碼。在瀏覽器中加載url並檢查json。有一個json解析器擴展有幫助。如果沒有,您可以使用開發者控制檯。 – e4c5
Log.d(「Detail Outputsss」,「」+ response.toString());它打印什麼......? –