聚合數據Android SDK 12306火車票查詢訂票演示示例 編輯

1.聚合SDK是聚合數據平臺,爲移動開發者提供的免費數據接口.使用前請先到聚合平臺(http://www.juhe.cn/)註冊,申請相關數據.

2.下載聚合數據SDK,將開發包裏的juhe_sdk_v_1_1.jar拷貝到libs根目錄下,將libJuheSDK_v_1_0.so拷貝到libs\armeabi目錄下,如圖:


3. 根據接口說明文檔找到以下方法:

Java代碼  收藏代碼

  1. /** 

  2.      * 獲取車次 

  3.      *  

  4.      * @param name 

  5.      *            車次 

  6.      * @param jsonCallBack 

  7.      */  

  8.     public void getTrainNum(String name, JsonCallBack jsonCallBack)  

  9.   

  10. /** 

  11.      * 站到站查詢 

  12.      *  

  13.      * @param start 

  14.      *            出發站 

  15.      * @param end 

  16.      *            終點站 

  17.      * @param traintype 

  18.      *            列車類型 

  19.      * @param jsonCallBack 

  20.      */  

  21.     public void getS2S(String start, String end, String traintype, JsonCallBack jsonCallBack)   

  22.   

  23. /** 

  24.      * 12306實時餘票查詢 

  25.      *  

  26.      * @param from 

  27.      *            出發站 

  28.      * @param to 

  29.      *            到達站 

  30.      * @param date 

  31.      *            出發日期 默認今天 

  32.      * @param traintype 

  33.      *            車次類型 

  34.      * @param jsonCallBack 

  35.      */  

  36.     public void getTicketleft(String from, String to, String date, String traintype, JsonCallBack jsonCallBack)   

  37.   

  38. /** 

  39.      * 12306訂票①:查詢車次 

  40.      *  

  41.      * @param from 

  42.      *            出發站 

  43.      * @param to 

  44.      *            到達站 

  45.      * @param date 

  46.      *            出發日期 

  47.      * @param traintype 

  48.      *            車次類型 

  49.      * @param jsonCallBack 

  50.      */  

  51.     public void bookTrainNum(String from, String to, String date, String traintype, JsonCallBack jsonCallBack)   

  52.   

  53. /** 

  54.      *  

  55.      * @param name 

  56.      *            乘客姓名 

  57.      * @param seat 

  58.      *            座位類型:商務座:9,一等座:M,二等座:O,特等座:P,高級軟臥:6,軟臥:4,硬臥:3,軟座:2,硬座:1,無座:0 

  59.      * @param mobile 

  60.      *            乘客手機號碼 

  61.      * @param idcard 

  62.      *            乘客***號碼 

  63.      * @param username 

  64.      *            12306官網賬號 

  65.      * @param password 

  66.      *            12306官網密碼 

  67.      * @param train_no 

  68.      *            步驟①對應車次返回值 

  69.      * @param station_train_code 

  70.      *            步驟①對應車次返回值 

  71.      * @param from_station_telecode 

  72.      *            步驟①對應車次返回值 

  73.      * @param to_station_telecode 

  74.      *            步驟①對應車次返回值 

  75.      * @param from_station_name 

  76.      *            步驟①對應車次返回值 

  77.      * @param to_station_name 

  78.      *            步驟①對應車次返回值 

  79.      * @param secretStr 

  80.      *            步驟①對應車次返回值 

  81.      * @param jsonCallBack 

  82.      */  

  83.     public void bookTicket(String name, String seat, String mobile, String idcard, String username, String password, String train_no, String station_train_code, String from_station_telecode, String to_station_telecode, String from_station_name, String to_station_name, String secretStr, JsonCallBack jsonCallBack)  



4.程序中調用方法


首先,在AnroidManifest.xml中添加權限


Html代碼  收藏代碼

  1. <uses-permission android:name="android.permission.READ_PHONE_STATE" />  

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

  3. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  

  4. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  

  5. <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />  

  6. <uses-permission android:name="android.permission.READ_CONTACTS" />  


在application標籤內部加入你申請的openid


Html代碼  收藏代碼

  1. <meta-data  

  2.         android:name="com.thinkland.juheapi.openid"  

  3.         android:value="申請的openid" />  


在使用前需要調用一次初始化方法


Java代碼  收藏代碼

  1. CommonFun.initialize(getApplicationContext());  



導入相關包


Java代碼  收藏代碼

  1. import com.thinkland.juheapi.common.CommonFun;  

  2. import com.thinkland.juheapi.common.JsonCallBack;  

  3. import com.thinkland.juheapi.data.train.TrainData;  





調用方法

Java代碼  收藏代碼

  1. //站站查詢  

  2.         TrainData trainData = TrainData.getInstance();  

  3.         trainData.getS2S("上海虹橋""蘇州園區""G"new JsonCallBack() {  

  4.   

  5.             @Override  

  6.             public void jsonLoaded(JSONObject arg0) {  

  7.                 // TODO Auto-generated method stub  

  8.                 try {  

  9.                     int resultcode = arg0.getInt("resultcode");  

  10.                     if (resultcode == 200) {  

  11.                         JSONArray resultJson = arg0.getJSONArray("result");  

  12.                     }  

  13.                 } catch (JSONException e) {  

  14.                     // TODO Auto-generated catch block  

  15.                     e.printStackTrace();  

  16.                 }  

  17.             }  

  18.         });  





5.返回字段及相關錯誤碼


public voidgetTrainNum(String name, JsonCallBack jsonCallBack)

返回字段:

wKioL1Q4uznARzFHAAKryxuzI4c456.jpg

public void getS2S(String start,String end, String traintype,JsonCallBack jsonCallBack)

返回字段:

wKiom1Q4uwPgvjf2AAGhkYEdaGY880.jpg

public void getTicketleft(String from, String to,String date, String traintype,JsonCallBack jsonCallBack)

返回字段:

wKioL1Q4u7KzVgbhAAHHrXVWpVk998.jpg

wKiom1Q4u3uwl2dXAAFQYflXziA183.jpg

publicvoid bookTrainNum(String from, String to,String date,String traintype, JsonCallBack jsonCallBack)

返回值:

wKiom1Q4u-GD0vIsAAG3np2f11Y217.jpg

wKioL1Q4vBnBTfrhAAEwEFE2e58680.jpg

wKiom1Q4u-Lit30UAAEup-AKM5g466.jpg

wKioL1Q4vBnAyZB0AAEH-BaxLaE695.jpg

public voidbookTicket(String name, String seat, String mobile,

String idcard, String username, String password, String train_no,

String station_train_code, String from_station_telecode,

String to_station_telecode, String from_station_name,

Stringto_station_name, String secretStr, JsonCallBack jsonCallBack)

返回碼:

wKiom1Q4vCHwXNx7AABzTjkvT9k966.jpg

wKiom1Q4vCGR0deqAAIxWHkiKn4734.jpg


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章