这个问题通常是由于 PHP 返回的 JSON 字符串无效引起的。为了解决这个问题,您可以尝试以下步骤:
例如:
$array = array('foo' => 'bar', 'baz' => 'qux'); $json = json_encode($array); echo $json;
这将输出一个有效的 JSON 格式字符串,如下所示:
{"foo":"bar","baz":"qux"}
例如:
URL url = new URL("http://example.com/myscript.php"); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); InputStream in = new BufferedInputStream(urlConnection.getInputStream()); String result = convertStreamToString(in);
例如:
JSONObject jsonObject = new JSONObject(result); String foo = jsonObject.getString("foo"); String baz = jsonObject.getString("baz");
或者:
JSONArray jsonArray = new JSONArray(result); for (int i = 0; i < jsonArray.length(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String foo = jsonObject.getString("foo"); String baz = jsonObject.getString("baz"); }
如果您仍然遇到问题,可以尝试在 PHP 中打印出返回的 JSON 字符串,或者在 Android Studio 中打印出解析后的 JSON 对象或数组,以查看是否存在错误。