Android访问php取回json数据 - 面向对象网 php 学习 对象 - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > OOP语言 > PHP > 正文

Android访问php取回json数据

来源: www.bianceng.cn 阅读:

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>

之前就好了

然后测试通过。

Tags:
相关文章列表: