当前位置: 编程技术>移动开发
Android访问php取回json数据实例
来源: 互联网 发布时间:2014-10-20
本文导语: 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 StringBu...
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中,需要进行如下配置:
就加在
之前就好了
然后测试通过。
代码如下:
$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中,需要进行如下配置:
就加在
之前就好了
然后测试通过。