聚合数据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. 根据接口说明文档找到以下方法:
/**
* 获取车次
*
* @param name
* 车次
* @param jsonCallBack
*/
public void getTrainNum(String name, JsonCallBack jsonCallBack) /**
* 站到站查询
*
* @param start
* 出发站
* @param end
* 终点站
* @param traintype
* 列车类型
* @param jsonCallBack
*/
public void getS2S(String start, String end, String traintype, JsonCallBack jsonCallBack) /**
* 12306实时余票查询
*
* @param from
* 出发站
* @param to
* 到达站
* @param date
* 出发日期 默认今天
* @param traintype
* 车次类型
* @param jsonCallBack
*/
public void getTicketleft(String from, String to, String date, String traintype, JsonCallBack jsonCallBack) /**
* 12306订票①:查询车次
*
* @param from
* 出发站
* @param to
* 到达站
* @param date
* 出发日期
* @param traintype
* 车次类型
* @param jsonCallBack
*/
public void bookTrainNum(String from, String to, String date, String traintype, JsonCallBack jsonCallBack) /**
*
* @param name
* 乘客姓名
* @param seat
* 座位类型:商务座:9,一等座:M,二等座:O,特等座:P,高级软卧:6,软卧:4,硬卧:3,软座:2,硬座:1,无座:0
* @param mobile
* 乘客手机号码
* @param idcard
* 乘客***号码
* @param username
* 12306官网账号
* @param password
* 12306官网密码
* @param train_no
* 步骤①对应车次返回值
* @param station_train_code
* 步骤①对应车次返回值
* @param from_station_telecode
* 步骤①对应车次返回值
* @param to_station_telecode
* 步骤①对应车次返回值
* @param from_station_name
* 步骤①对应车次返回值
* @param to_station_name
* 步骤①对应车次返回值
* @param secretStr
* 步骤①对应车次返回值
* @param jsonCallBack
*/
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中添加权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
在application标签内部加入你申请的openid
<meta-data
android:name="com.thinkland.juheapi.openid"
android:value="申请的openid" />
在使用前需要调用一次初始化方法
CommonFun.initialize(getApplicationContext());
导入相关包
import com.thinkland.juheapi.common.CommonFun;
import com.thinkland.juheapi.common.JsonCallBack;
import com.thinkland.juheapi.data.train.TrainData;
调用方法
//站站查询
TrainData trainData = TrainData.getInstance();
trainData.getS2S("上海虹桥", "苏州园区", "G", new JsonCallBack() { @Override
public void jsonLoaded(JSONObject arg0) {
// TODO Auto-generated method stub
try {
int resultcode = arg0.getInt("resultcode");
if (resultcode == 200) {
JSONArray resultJson = arg0.getJSONArray("result");
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
5.返回字段及相关错误码
public voidgetTrainNum(String name, JsonCallBack jsonCallBack)
返回字段:

public void getS2S(String start,String end, String traintype,JsonCallBack jsonCallBack)
返回字段:

public void getTicketleft(String from, String to,String date, String traintype,JsonCallBack jsonCallBack)
返回字段:


publicvoid bookTrainNum(String from, String to,String date,String traintype, JsonCallBack jsonCallBack)
返回值:




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)
返回码:


聚合数据Android SDK 12306火车票查询订票演示示例的更多相关文章
- 12306火车票查询--python
最近我看到看到使用python实现火车票查询,我自己也实现了,感觉收获蛮多的,下面我就把每一步骤都详细给分享出来.(注意使用的是python3) 首先我将最终结果给展示出来: 在cmd命令行执行:py ...
- 百度地图 Android SDK - 检索功能使用的简单演示样例
百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...
- Android应用源码航空订票软件客户端
功能分类:其他 支持平台:Android 运行环境:Android 开发语言:Java 开发工具:Eclipse 源码大小:1.76MB 下载地址:http://w ...
- web类协议脚本-飞机订票系统示例
以下是LR自带的飞机订票系统的Demo,希望能帮助大家. Action() { int iRand; int iTmp; char *strTmpA; char *strTmpB; char *str ...
- Android程序之全国天气预报查询(聚合数据开发)
一.项目演示效果例如以下: 项目源码下载地址: http://pan.baidu.com/s/1pL6o5Mb password:5myq 二.使用 聚合数据SDK: (1)聚合数据官网地址:http ...
- Python实现查询12306火车票信息
例子来源于马哥的公众号,看了几遍,有些地方存在些疑问,然后就自己查找些资料,重写的一下,但是对于获取到的信息,并不能有效的解析出来,而且对于中文字符处理,并不是很好,请大神指教下!谢过! 1.接口设置 ...
- C语言小项目-火车票订票系统
list.h #ifndef __LIST_H__ #define __LIST_H__ #include "stdafx.h" #include <stdio.h> ...
- 《ArcGIS Runtime SDK for Android开发笔记》——(7)、示例代码arcgis-runtime-samples-android的使用
1.前言 学习ArcGIS Runtime SDK开发,其实最推荐的学习方式是直接看官方的教程.示例代码和帮助文档,因为官方的示例一般来说都是目前技术最新,也是最详尽的.对于ArcGIS Runtim ...
- C语言实现-航空订票系统(飞机订票系统)
开发环境:CodeBlocks 开发语言:C 实现功能:登录,订票,退票 数据存储:文本读写 涉及文件: 相关文件下载: 码云:https://gitee.com/ikaros-521/c_pro ...
随机推荐
- 【转】 [Unity3D]手机3D游戏开发:场景切换与数据存储(PlayerPrefs 类的介绍与使用)
http://blog.csdn.net/pleasecallmewhy/article/details/8543181 在Unity中的数据存储和iOS中字典的存储基本相同,是通过关键字实现数据存储 ...
- Jquery鼠标悬停按钮图标动态变化效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- POJ 2184:Cow Exhibition(01背包变形)
题意:有n个奶牛,每个奶牛有一个smart值和一个fun值,可能为正也可能为负,要求选出n只奶牛使他们smart值的和s与fun值得和f都非负,且s+f值要求最大. 分析: 一道很好的背包DP题,我们 ...
- bzoj4380[POI2015]Myjnie dp
[POI2015]Myjnie Time Limit: 40 Sec Memory Limit: 256 MBSec Special JudgeSubmit: 368 Solved: 185[S ...
- shell变量的数值计算
shell中常见的算术运算命令如下 1.(()) 用于整数运算的常用运算符,效率很高 2.let 用于整数运算,类似于 (()) 3.expr 可用于整数计算,但还有很多其他的额外功能 4.bc ...
- PAT 天梯赛 L1-043 阅览室
L1-043. 阅览室 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 天梯图书阅览室请你编写一个简单的图书借阅统计程序.当读者 ...
- Python 使用cx_freeze 生成exe文件【转】
Python 使用cx_freeze 生成exe文件 在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三 ...
- Vijos[1028]魔族密码
风之子刚走进他的考场,就……花花:当当当当~~偶是魅力女皇——花花!!^^(华丽出场,礼炮,鲜花)风之子:我呕……(杀死人的眼神)快说题目!否则……-_-###花花:……咦~~好冷~~我们现在要解决的 ...
- LOJ#2084. 「NOI2016」网格
$n,m \leq 1e9$,$n*m$的网格中有$c \leq 1e5$个是黑的,其他是白的.问:使至少两个白的不连通,最少需要再把几个白的涂黑. 可以发现答案是-1,0,1,2啦.-1要么没白的, ...
- Android下设置CPU核心数和频率
现在的Android手机双核.四核变得非常普遍,同时CPU频率经常轻松上2G,功耗肯定会显著增加.而大多数的ARM架构的CPU采用的是对称多处理(SMP)的方式处理多CPU.这就意味着每个CPU核心是 ...