好简化 违章查询的 API,网页地址
http://www.haoservice.com/docs/2/easyquery#apicontent
接口如下:
因为不是注册会员所以只有十次机会,所以不敢瞎用.....所以直接查询了一次,用官方的数据,然后换成自己的key值,查询结果如下:
官方给的车牌号,发动机号,车架号,城市:
need data:鄂A7LT67;101800589;LSGPC52U6AF102554;武汉;02
返回的json信息为:
{"error_code":0,"reason":"成功","result":{"province":"HUB","city":"HUB_WuHan","hphm":"鄂A7LT67","hpzl":"02","lists":[{"date":"2014-11-06 16:11:00","area":"70619:台北一路台北一路(云林路路口至新华路路口路段)","act":"10391:机动车违反规定停放、临时停车且驾驶人不在现场或者虽在现场但驾驶人拒绝立即驶离,妨碍其它车辆、行人通行的","code":"10391","fen":"0","money":"20","handled":"未缴费","longitude":"114.259743","latitude":"30.632492","PayNo":"","CollectOrgan":null},{"date":"2015-04-24 10:06:00","area":"70616:二七路二七小路路口至赵家条路路口","act":"10393:机动车违反禁止停车标志指示的","code":"10393","fen":"0","money":"200","handled":"未缴费","longitude":"114.307831","latitude":"30.628969","PayNo":"","CollectOrgan":null},{"date":"2015-08-28 11:10:00","area":"60603:武胜路航空路立交上桥处QK","act":"13451:机动车违反禁止标线指示的","code":"13451","fen":"3","money":"200","handled":"未缴费","longitude":"114.267204","latitude":"30.578915","PayNo":"","CollectOrgan":null},{"date":"2015-09-15 07:58:00","area":"62003:发展大道中一路","act":"16251:驾驶机动车违反道路交通信号灯通行的","code":"16251","fen":"6","money":"200","handled":"未缴费","longitude":"114.270836","latitude":"30.618425","PayNo":"","CollectOrgan":null},{"date":"2015-11-22 15:39:00","area":"80651:云彩路云彩路(常青路至淮海路)B","act":"10390:机动车违反规定停放、临时停车且驾驶人不在现场或者虽在现场但驾驶人拒绝立即驶离,妨碍其它车辆、行人通行的","code":"10390","fen":"0","money":"100","handled":"未缴费","longitude":"114.250534","latitude":"30.599424","PayNo":"","CollectOrgan":null},{"date":"2015-11-25 13:31:00","area":"60060:珞喻路珞喻路(华师路口至广八路口路段)F","act":"10393:机动车违反禁止停车标志指示的","code":"10393","fen":"0","money":"200","handled":"未缴费","longitude":"114.364326","latitude":"30.527719","PayNo":"","CollectOrgan":null}]}}
创建一个类存放需要获取的信息变量,get/set方法....
因为不走获取浪费次数,所以直接将HTML的值设置为以上的json数据
这个R.string.wztestdata 就是上面的数据,太长了,放到string里
然后是解析函数:
public void analyze_weizhang(){ weizhangTools weizhangTools=new weizhangTools(); try { JSONObject jsonObject=new JSONObject(html_weizhang); JSONObject ja=jsonObject.getJSONObject("result"); String rs_chepai=ja.getString("hphm"); String rs_city=ja.getString("city"); String rs_chexing=ja.getString("hpzl"); String rs_date; String rs_area; String rs_action; String rs_koufen; String rs_charge; String rs_state; JSONArray jsonArray=ja.getJSONArray("lists"); int size=jsonArray.length(); for(int i=0;i<size;i++){ JSONObject jo= (JSONObject) jsonArray.get(i); rs_date=jo.getString("date"); rs_area=jo.getString("area"); rs_action=jo.getString("act"); rs_koufen=jo.getString("fen"); rs_charge=jo.getString("money"); rs_state=jo.getString("handled"); rs_lists += "日期 :"+rs_date+ "\n地点 :"+rs_area+ "\n违章行为 :"+rs_action+ "\n扣分 :"+rs_koufen+ "\n罚款 :"+rs_charge+ "\n缴费状态 :"+rs_state+"\n\n"; } weizhangTools.setW_chepai(rs_chepai); weizhangTools.setW_city(rs_city); weizhangTools.setW_chexing(rs_chexing); weizhangTools.setW_list(rs_lists); weizhang_message=weizhangTools.toString(); Log.d("091809",weizhang_message); Intent intent=new Intent(Three_Weizhang_Activity.this,Three_Weizhang_Query_Activity.class); intent.putExtra("message",weizhang_message); startActivity(intent); }catch (JSONException e){ e.printStackTrace(); } }
另一个活动获取内容:
日志如下,解析成功了: