您的位置:首页 > 移动开发 > Android开发

聚合数据Android SDK 天气查询演示示例

2014-10-11 13:41 381 查看
1.到libs聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据.2.下载聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libs\armeabi目录下,如图:3.根据接口说明文档找到以下方法:Java代码/*** 根据城市名查询天气** @param cityname* 城市名,如:"苏州"* @param format* 未来6天预报(future)两种返回格式,1或2,默认1** @param jsonCallBack**/public void getByCitys(String cityname, int format, JsonCallBack jsonCallBack)/*** 天气种类及标识列表** @param jsonCallBack**/public void getUni(JsonCallBack jsonCallBack)/**** 根据IP查询天气** @param ip* ip地址,如:58.215.185.154* @param format* 未来6天预报(future)两种返回格式,1或2,默认1* @param jsonCallBack**/public void getByIP(String ip, int format, JsonCallBack jsonCallBack)/**** 根据GPS坐标查询天气*** @param lon* 经度* @param lat* 纬度* @param format* 未来6天预报(future)两种返回格式,1或2,默认1* @param jsonCallBack**/public void getByGEO(double lat, double lon, int format, JsonCallBack jsonCallBack)/*** 城市天气三小时预报** @param cityname* @param jsonCallBack**/public void getForecast3h(String cityname, JsonCallBack jsonCallBack)/*** 支持城市列表** @param jsonCallBack*/public void getCities(JsonCallBack jsonCallBack)4.程序中调用方法首先,在AnroidManifest.xml中添加权限Html代码<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标签内部加入你申请的openidHtml代码<meta-dataandroid:name="com.thinkland.juheapi.openid"android:value="申请的openid" />在使用前需要调用一次初始化方法Java代码CommonFun.initialize(getApplicationContext());导入相关包Java代码import com.thinkland.juheapi.common.CommonFun;import com.thinkland.juheapi.common.JsonCallBack;import com.thinkland.juheapi.data.weather.WeatherData;
调用方法Java代码//根据城市名/id查询天气WeatherData weatherData = WeatherData.getInstance();weatherData.getByCitys("苏州", 1, new JsonCallBack() {@Overridepublic void jsonLoaded(JSONObject arg0) {// TODO Auto-generated method stubtry {int code = arg0.getInt("resultcode");if (code == 200) {JSONObject resultJson = arg0.getJSONObject("result");}} catch (JSONException e) {// TODO Auto-generated catch blocke.printStackTrace();}}});5.返回字段及相关错误码根据城市名/id查询天气

publicvoidgetByCitys(Stringcityname, JsonCallBackjsonCallBack)

返回字段:(注意:有些字段对应的属性值为空,使用时需判断)

publicvoidgetUni(JsonCallBackjsonCallBack)

返回字段:

publicvoid getByIP(Stringip, JsonCallBackjsonCallBack)

返回字段

publicvoid getByIP(Stringip, JsonCallBackjsonCallBack)

返回字段同juhe.apis.weather.index(根据城市名/id查询天气)。public void getByGEO(doublelat,doublelon,JsonCallBack jsonCallBack)返回字段同juhe.apis.weather.index(根据城市名/id查询天气)。public voidgetForecast3h(String cityname, JsonCallBackjsonCallBack)返回字段:publicvoidgetCities(JsonCallBackjsonCallBack)返回字段:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: