Android Json 解析

方法一 使用API解析

json:

{"beaconid":"2397","state":"01","userid":"90"}

获取json的方法

 private void sendRequestWithHttpClient(){
                new Thread(new Runnable() {
                  @Override
                  public void run() {

                          
                          try {
                                 // HttpClient对象

                              HttpClient httpClient = new DefaultHttpClient();
                                 // HttpGet对象
                              HttpGet httpGet = new HttpGet("http://192.168.0.103/test.json");
                              HttpResponse httpResponse = httpClient.execute(httpGet);
                              if (httpResponse.getStatusLine().getStatusCode() == 200) {
                                  HttpEntity entity = httpResponse.getEntity();
                                  // 取得返回的数据
                                  String response = EntityUtils.toString(entity, "utf-8");
//解析json parseJSONWithJSONObject(response); } }
catch (IOException e) { e.printStackTrace(); } } }).start(); }

解析json的方法

 private void parseJSONWithJSONObject (String jsonData){
        try {
            JSONObject jsonObj = new JSONObject(jsonData);
            String beaconid = jsonObj.getString("beaconid");
            String state = jsonObj.getString("state");
            String uid = jsonObj.getString("userid");
            Log.d("beaconid","beaconid is"+" "+beaconid);
            Log.d("state","state is"+ " "+state);
            Log.d("userid","userid is"+ " "+uid);

        } catch (JSONException e) {
            e.printStackTrace();
        }
    }

最后在MainActivity 调用 sendRequestWithHttpClient() 方法;

记得在AndroidMainfest.xml

<uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.hardware.sensor.accelerometer" />

 



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。