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

前端之家收集整理的这篇文章主要介绍了聚合数据Android SDK 天气查询演示示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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代码

收藏代码

  1. /**

  2. *根据城市名查询天气

  3. *

  4. *@paramcityname

  5. *城市名,如:"苏州"

  6. *@paramformat

  7. *未来6天预报(future)两种返回格式,1或2,默认1

  8. *@paramjsonCallBack

  9. */

  10. publicvoidgetByCitys(Stringcityname,intformat,JsonCallBackjsonCallBack)

  11. *天气种类及标识列表

  12. voidgetUni(JsonCallBackjsonCallBack)

  13. *根据IP查询天气

  14. *@paramip

  15. *ip地址,如:58.215.185.154

  16. voidgetByIP(Stringip,0);padding:0px;margin:0px;width:auto;border:0px;">*根据GPS坐标查询天气

  17. *@paramlon

  18. *经度

  19. *@paramlat

  20. *纬度

  21. voidgetByGEO(doublelat,85);font-weight:bold;">doublelon,0);padding:0px;margin:0px;width:auto;border:0px;">*城市天气三小时预报

  22. voidgetForecast3h(Stringcityname,0);padding:0px;margin:0px;width:auto;border:0px;">*支持城市列表

  23. voidgetCities(JsonCallBackjsonCallBack)




4.程序中调用方法

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


HTML代码

收藏代码

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

  2. uses-permissionandroid:name="android.permission.INTERNET"uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"uses-permissionandroid:name="android.permission.READ_CONTACTS"/>

在application标签内部加入你申请的openid

Meta-data

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

  • android:value="申请的openid"在使用前需要调用一次初始化方法

  • CommonFun.initialize(getApplicationContext());

  • 导入相关包

  • importcom.thinkland.juheapi.common.CommonFun;

  • importcom.thinkland.juheapi.common.JsonCallBack;

  • importcom.thinkland.juheapi.data.weather.WeatherData;





  • 调用方法

    @H_654_403@//根据城市名/id查询天气

  • WeatherDataweatherData=WeatherData.getInstance();

  • weatherData.getByCitys("苏州",1,85);font-weight:bold;">newJsonCallBack(){

  • @Override

  • voidjsonLoaded(JSONObjectarg0){

  • //TODOAuto-generatedmethodstub

  • try{

  • intcode=arg0.getInt("resultcode");

  • if(code==200){

  • JSONObjectresultJson=arg0.getJSONObject("result");

  • }

  • }catch(JSONExceptione){

  • //TODOAuto-generatedcatchblock

  • e.printStackTrace();

  • }

  • }

  • });




  • 5.返回字段及相关错误


    根据城市名/id查询天气

    publicvoidgetByCitys(Stringcityname,JsonCallBackjsonCallBack)

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

    wKiom1Q4wWnCB8TeAAMZpwv2k_Y007.jpg

    wKioL1Q4waCArMHbAAECOJUrYGA729.jpg

    voidgetUni(JsonCallBack返回字段:

    wKiom1Q4wWmQrH-nAADCAlQBkks966.jpg

    voidgetByIP(Stringip,255);">返回字段

    wKioL1Q4wuWRh3-CAAC9mZO2wyc818.jpg


    返回字段同juhe.apis.weather.index(根据城市名/id查询天气)。

    publicvoidgetByGEO(doublelat,lon,JsonCallBackjsonCallBack)

    voidgetForecast3h(Stringcityname,255);">
    返回字段:

    wKiom1Q4wt3CcBHLAAG0huYxE08672.jpg

    voidgetCities(JsonCallBack返回字段:

    wKioL1Q4wz3yg4HOAAESaCK7SPo935.jpg

    wKiom1Q4wwaDFcCqAAEqe8yDtjc691.jpg

    猜你在找的设计模式相关文章