点击这里给我发消息 点击这里给我发消息

Android访问php取回json数据

添加时间:2013-12-6
    相关阅读: 网络 PHP

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

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

java.net.SocketException: Permission denied

此为应用访问网络的权限不足 在AndroidManifest.xml中,需要进行如下配置:

<uses-permission Android:name="android.permission.INTERNET" />

就加在

</manifest>

之前就好了

然后测试通过。

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册