1. 聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据.
2. 下载 聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libs\armeabi目录下,如图:
3. 根据接口说明文档找到以下方法:
/**
* 按城市检索加油站
*
* @param city 城市名
* @param page 页数 默认1
* @param jsonCallBack
*/
public void region(String city, int page, JsonCallBack jsonCallBack)
/**
* 检索周边加油站
*
* @param lon
* @param lat
* @param r
* 搜索范围,单位M,默认3000,最大10000
* @param page
* 页数,默认1
* @param jsonCallBack
*/
public void local(double lon, double lat, int r, int page, 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.air.PetrolData;
调用方法
//根据城市查询加油站
PetrolData petrolData = PetrolData.getInstance();
petrolData.region("南京", 1, 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 void region(String city, int page, JsonCallBackjsonCallBack)
返回字段:
名称 |
| 类型 | 说明 |
error_code |
| int | 返回码 |
reason |
| string | 返回说明 |
data |
| dictionary | 返回结果 |
| name | string | 加油站名称 |
| area | string | 城市邮编 |
| areaname | string | 城市区域 |
| address | string | 加油站地址 |
| brandname | string | 运营商类型 |
| type | string | 加油站类型 |
| discount | string | 是否打折加油站 |
| exhaust | string | 尾气排放标准 |
| position | string | 谷歌地图坐标 |
| lat | double | 百度地图纬度 |
| lon | double | 百度地图经度 |
| price | array | 省控基准油价 |
| gastprice | array | 加油站油价 |
| fwlsmc | string | 加油卡信息 |
public void local(doublelon, doublelat, intr, intpage, JsonCallBack jsonCallBack)
返回字段:
名称 |
| 类型 | 说明 |
error_code |
| int | 返回码 |
reason |
| string | 返回说明 |
data |
| dictionary | 返回结果 |
| name | string | 加油站名称 |
| area | string | 城市邮编 |
| areaname | string | 城市区域 |
| address | string | 加油站地址 |
| brandname | string | 运营商类型 |
| type | string | 加油站类型 |
| discount | string | 是否打折加油站 |
| exhaust | string | 尾气排放标准 |
| position | string | 谷歌地图坐标 |
| lat | double | 百度地图纬度 |
| lon | double | 百度地图经度 |
| pricelon | string | 省控基准油价 |
| gastprice | string | 加油站油价 |
| fwlsmc | string | 加油卡信息 |
| distance | string | 与坐标的距离,单位M |
错误码 | 说明 |
200701 | 城市名不能为空 |
200702 | 错误的经纬度 |
200703 | 无结果了 |
200705 | 无结果了 |