lvxfcjf 发表于 2015-07-13 11:14

Android访问php取回json数据

php代码$array = array(
'username'=>'杨铸',
'password'=>'123456',
'user_id'=>1
);
echo json_encode($array);java代码private void startUrlCheck(String username,String password)
{
    HttpClient client = new DefaultHttpClient();
    StringBuilder builder = new StringBuilder();

    HttpGet myget = new HttpGet("http://10.0.2.2/Android/index.php");
    try {
      HttpResponse response = client.execute(myget);
      BufferedReader reader = new BufferedReader(new InputStreamReader(
      response.getEntity().getContent()));
      for (String s = reader.readLine(); s != null; s = reader.readLine()) {
            builder.append(s);
      }
      JSONObject jsonObject = new JSONObject(builder.toString());
      String re_username = jsonObject.getString("username");
      String re_password = jsonObject.getString("password");
      int re_user_id = jsonObject.getInt("user_id");
      setTitle("用户id_"+re_user_id);
      Log.v("url response", "true="+re_username);
      Log.v("url response", "true="+re_password);
    } catch (Exception e) {
      Log.v("url response", "false");
      e.printStackTrace();
    }
}运行说明
其中http://10.0.2.2为Android访问本机url的ip地址。对应电脑上测试的http://127.0.0.1

另外执行代码时会抛出异常

java.net.SocketException: Permission denied

此为应用访问网络的权限不足 在AndroidManifest.xml中,需要进行如下配置:
<uses-permission Android:name="android.permission.INTERNET" />
就加在
</manifest>
之前就好了
然后测试通过。

baopbird2005 发表于 2015-07-22 15:56

楼主有使用过 jsonArray 这个方法吗?
我使用的解析出来的数据有问题的
页: [1]
查看完整版本: Android访问php取回json数据