加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-13 22:44:56 所属栏目:百科 来源:网络整理
导读:1. 到 libs聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据. 2.下载聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libsarmeabi目录下,如

1.libs聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据.

2.下载聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libsarmeabi目录下,如图:


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;





  • 调用方法

    //根据城市名/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

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读