`
SorosW
  • 浏览: 9931 次
  • 来自: 苏州
文章分类
社区版块
存档分类
最新评论

聚合数据iOS SDK 全国天气预报演示示例

 
阅读更多

1,将聚合数据SDK(JuheApis.framework)添加到你的程序中来,SDK依赖的包包括:



2,在聚合SDK Framework的JHSDKAPIPath.h文件中找到快递查询接口宏,以及字典参数

/*** 全国天气预报 ***/

/**
@brief 全国天气 -> 根据城市名/id查询天气
@param cityname string 必填 城市名或城市ID,如:"苏州"
@param dtype string 必填 返回数据格式:json或xml,默认json
@param format int 非必填 未来6天预报(future)两种返回格式,1或2,默认1
*/
#define kJHAPIS_LIFE_WEATHER_INDEX @"juhe.apis.weather.index" //1、根据城市名/id查询天气

/**
@brief 全国天气 -> 天气种类及标识列表
@param dtype string 非必填 返回数据的格式,xml或json,默认json
*/
#define kJHAPIS_LIFE_WEATHER_UNI @"juhe.apis.weather.uni" //2、天气种类及标识列表
/**
@brief 全国天气 -> 根据IP查询天气
@param ip string 必填 ip地址,如:58.215.185.154
@param dtype string 必填 返回数据格式:json或xml,默认json
@param format int 非必填 未来6天预报(future)两种返回格式,1或2,默认1
*/
#define kJHAPIS_LIFE_WEATHER_IP @"juhe.apis.weather.ip" //3、根据IP查询天气
/**
@brief 全国天气 -> 根据GPS坐标查询天气
@param lon string 必填 经度,如:116.39277
@param lat string 必填 纬度,如:39.933748
@param format int 非必填 未来6天预报(future)两种返回格式,1或2,默认1
@param dtype string 必填 返回数据格式:json或xml,默认json
*/
#define kJHAPIS_LIFE_WEATHER_GEO @"juhe.apis.weather.geo" //4、根据GPS坐标查询天气
/**
@brief 全国天气 -> 城市天气三小时预报
@param cityname string 必填 城市名,如:"苏州"
@param dtype string 必填 返回数据格式:json或xml,默认json
*/
#define kJHAPIS_LIFE_WEATHER_FORECAST3H @"juhe.apis.weather.forecast3h" //5、城市天气三小时预报
/**
@brief 全国天气 -> 支持城市列表
@param dtype string 非必填 返回数据的格式,xml或json,默认json
*/

#define kJHAPIS_LIFE_WEATHER_CITYS @"juhe.apis.weather.citys" //6、支持城市列表


3,全国天气预报接口在程序中调用方法(将ViewController.m改为.mm)

#import "ViewController.h"

#import <JuheApis/JuheAPI.h>
#import <JuheApis/JHOpenidSupplier.h>
#import <JuheApis/JHSDKAPIPath.h>

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[[JHOpenidSupplier shareSupplier] registerJuheAPIByOpenId:@"申请到的OpenId“];

UIButton* beginBtn=[UIButton buttonWithType:UIButtonTypeSystem];
beginBtn.frame=CGRectMake(20, 111, 280, 40);
[beginBtn setTitle:@"开始" forState:UIControlStateNormal];
[beginBtn setTitleColor:[UIColor darkGrayColor] forState:UIControlStateNormal];
[beginBtn addTarget:self action:@selector(doTestAction) forControlEvents:UIControlEventTouchUpInside];
[beginBtn setBackgroundImage:[UIImage imageNamed:@"button5"] forState:UIControlStateNormal];
[self.view addSubview:beginBtn];
}

- (void)doTestAction
{
/* 1. 根据城市名/id查询天气 */
[self test : kJHAPIS_LIFE_WEATHER_INDEX parameters:@{@"cityname":@"苏州" , @"dtype":@"json" } ];


/* 2. 天气种类及标识列表 */

[self test :kJHAPIS_LIFE_WEATHER_UNI parameters:@{@"dtype":@"json"} ];


/* 3. 根据IP查询天气 */

[self test : kJHAPIS_LIFE_WEATHER_IP parameters:@{@"ip":@"58.215.185.154" , @"dtype":@"json"} ];


/* 4. 根据GPS坐标查询天气 */

[self test :kJHAPIS_LIFE_WEATHER_GEO parameters:@{@"lon":@"116.39277" , @"lat":@"39.933748" , @"dtype":@"json" } ];


/* 5. 城市天气三小时预报 */

[self test :kJHAPIS_LIFE_WEATHER_FORECAST3H parameters:@{@"cityname":@"苏州" , @"dtype":@"json" } ];


/* 6. 支持城市列表 */

[self test :kJHAPIS_LIFE_WEATHER_CITYS parameters:@{@"dtype":@"json" } ];


}

- (void)test:(NSString *)path parameters:(NSDictionary *)parameters{

JuheAPI *juheapi = [JuheAPI shareJuheApi];
[juheapi executeWorkWithAPI:path
parameters:parameters
success:^(id responseObject){
if ([[parameters objectForKey:@"dtype"] isEqualToString:@"xml"]) {
NSLog(@"***xml*** \n %@", responseObject);
}else{
int error_code = [[responseObject objectForKey:@"error_code"] intValue];
if (!error_code) {
NSLog(@" %@", responseObject);
}else{
NSLog(@" %@", responseObject);
}
}

} failure:^(NSError *error) {
NSLog(@"error: %@",error.description);
}];
}

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end


4,全国天气预报接口返回数据说明以及错误码说明

1. 根据城市名/id查询天气

API :juhe.apis.weather.index (宏 : kJHAPIS_LIFE_WEATHER_INDEX )

返回字段 :

名称

类型

说明

resultcode

int

返回码

reason

string

返回说明

result

dictionary

返回结果

sk

dictionary

当前实况天气

temp

int

当前温度

wind_direction

string

当前风向

wind_strength

string

当前风力

humidity

string

当前湿度

time

date

更新时间

today

dictionary

今日天气

city

string

城市

date_y

string

日期

week

string

星期

temperature

string

今日温度

weather

string

今日天气

weather_id

dictionary

天气唯一标识

fa

Int

天气标识00:晴

fb

int

天气标识53:霾 如果fa不等于fb,说明是组合天气

wind

string

风向与风力

dressing_index

string

穿衣指数(较冷)

dressing_advice

string

穿衣建议

uv_index

string

紫外线强度

comfort_index

string

舒适度指数

wash_index

string

洗车指数

travel_index

string

旅游指数

exercise_index

string

晨练指数

drying_index

string

干燥指数
future

array

未来几天天气(内部字典参数均能在today中找到)
error_code

int

错误码

2. 天气种类及标识列表

API :juhe.apis.weather.uni (宏 :kJHAPIS_LIFE_WEATHER_UNI )

返回字段 :

名称

类型

说明

resultcode

int

返回码

reason

string

返回说明

result

array

返回结果集

wid

string

天气唯一标示符

weather

string

天气

error_code

int

错误码


3. 根据IP查询天气

API :juhe.apis.weather.ip (宏 :kJHAPIS_LIFE_WEATHER_IP )

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


4. 根据GPS坐标查询天气

API :juhe.apis.weather.geo (宏 :kJHAPIS_LIFE_WEATHER_GEO)

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


5. 城市天气三小时预报

API :juhe.apis.weather.forecast3h (宏 :kJHAPIS_LIFE_WEATHER_FORECAST3H )

返回字段 :

名称

类型

说明

resultcode

int

返回码

reason

string

返回说明

result

array

返回结果集

weatherid

int

天气标识ID

weather

string

天气

temp1

string

低温

temp2

string

高温

sh

string

开始小时

eh

string

结束小时

wid

string

天气唯一标示符

date

string

日期

sfdate

string

完整开始时间

efdate

string

完整结束时间

error_code

int

错误码


6. 支持城市列表

API :juhe.apis.weather.citys (宏 :kJHAPIS_LIFE_WEATHER_CITYS )

返回字段 :

名称

类型

说明

resultcode

int

返回码

reason

string

返回说明

result

dictionary

返回结果集

id

int

城市ID

province

string

省份名称

city

string

城市名称

district

string

城市/区名称

error_code

int

错误码


7 . 全国天气预报错误码

错误码

203901

查询城市不能

203902

查询不到城市的天气

203903

查询出

203904

错误GPS

203905

GPS解析出提供的坐正确支持国

203906

IP地址错误

203907

查询不到IP地址相的天气信息



5, 更多聚合数据SDK接口,访问这里: http://www.juhe.cn/juhesdk/idocs


分享到:
评论

相关推荐

    Unity 广告SDK Max聚合广告SDK

    Unity 广告SDK Max聚合广告SDK是专门为游戏开发者和应用开发者设计的一款强大的工具,它集成了AppLovin MAX的功能,让开发者能够在他们的Unity项目中轻松地实现广告的变现和优化。AppLovin MAX是一个领先的广告收益...

    ios-Cocoa高德点聚合.zip

    "ios-Cocoa高德点聚合.zip"这个压缩包很可能包含了一个示例项目或者代码片段,用于演示如何在iOS应用中实现这一功能。 首先,我们要理解什么是兴趣点(POI,Point of Interest)。在地图应用中,兴趣点通常指具有...

    ios-高德自定义点标聚合.zip

    这个“ios-高德自定义点标聚合.zip”文件包含了一个关于如何在iOS应用中实现高德地图自定义点标并进行聚合的示例代码。 一、高德地图SDK介绍 高德地图iOS SDK是一个强大的地图服务工具,它允许开发者集成地图、定位...

    pingpp ios接口文档

    在iOS应用开发中,集成第三方支付接口是常见的需求,Ping++是一个流行的聚合支付服务提供商,提供了包括微信支付、支付宝、银联等多种支付方式的一站式解决方案。本文将深入解析"pingpp ios接口文档",帮助开发者...

    IOS应用源码之CiExpandableTabBar for iOS.rar

    5. **兼容性**:此库应该兼容最新的 iOS SDK,并且能够在多种设备(如 iPhone 和 iPad)以及不同尺寸的屏幕上正常工作。 6. **易于集成**:对于开发者来说,集成 CiExpandableTabBar 应该相对简单,只需导入源代码...

    flutter_plugin_toponad:TopOn聚合平台SDK的Flutter插件

    入门该项目是Flutter的起点,Flutter是一个特殊的程序包,其中包括针对Android和/或iOS的平台特定的实现代码。 要获得Flutter入门方面的帮助,请查看我们的,其中提供了教程,示例,有关移动开发的指南以及完整的API...

    MapTest.Zip

    "MapTest.Zip"这个压缩包文件显然包含了一个关于如何在iOS应用中实现高德地图点聚合的示例。点聚合技术是一种优化大量数据在地图上显示的方法,它允许我们在小范围内以聚合图标的形式展示众多的点,而在用户放大地图...

    支付的ping++

    "支付的ping++"指的是Ping++,一个专为开发者设计的支付聚合平台,它提供了丰富的API接口和SDK,使得开发者可以快速集成多种支付方式,如微信支付、支付宝、银联等,到自己的应用中。在最新的Ping++ SDK中,包含了...

    今日头条demo(带数据)

    这通常意味着开发者或学习者可以通过这个demo来了解和学习如何使用今日头条的API、数据接口或者SDK,进行新闻资讯类应用的开发和数据展示。"带数据"这一关键词暗示了该demo不仅包含了源代码,还可能包含用于测试和...

    一个简单的rss阅读器.zipIOS应用例子源码下载

    这是一个关于iOS应用开发的资源,特别是一个简单的RSS阅读器的源码示例。RSS(Really Simple Syndication)是一种用于发布和订阅网站内容的XML格式,它允许用户通过聚合器应用程序来跟踪更新,而无需直接访问每个...

    SensoroSDKDemo

    3. **实时数据流处理**:Sensoro的设备可能持续生成数据,SDK可能包含处理这些实时数据的工具,如数据过滤、聚合和通知机制。 4. **用户界面组件**:为了简化开发过程,SDK可能提供了预构建的UI控件,用于显示设备...

    实现友盟第三方登录,分享,推送demo

    在本文中,我们将深入探讨如何实现友盟第三方登录、分享及推送功能,并通过一个名为"TestDemo"的示例项目来展示其实现过程。友盟是中国一家提供移动互联网服务的公司,其产品包括社交分享、消息推送、数据分析等多个...

    (资料汇总)ESP8266系列模组SDK示例/AT指令开发/ESP8266常见问题等-电路方案

    ESP8266系列模组SDK示例/AT指令开发/ESP8266常见问题等资料截图,见附件下载: ESP8266系列模块核心处理器 ESP8266 在较小尺寸封装中集成了业界领先的 Tensilica L106 超低功耗 32 位微型 MCU,带有 16 位精简模式,...

    百度地图轨迹demo

    【标题】"百度地图轨迹demo"是一个基于百度地图API实现的示例项目,它展示了如何在Android或iOS平台上记录和展示用户的移动轨迹。这个项目对于开发者来说,是学习和理解百度地图服务,尤其是轨迹追踪功能的一个很好...

    微信公众平台与小程序开发 从零搭建整套系统.part1

    7.4.1 聚合支付接入示例 101 7.5 小结 105 第8章 微信登录 8.1 微信开放平台 107 8.1.1 UnionID机制 108 8.2 微信自动登录 109 8.2.1 数据结构设计 110 8.2.2 代码实现 112 8.2.3 使用UnionID登录...

    微信公众平台与小程序开发 从零搭建整套系统.part2

    7.4.1 聚合支付接入示例 101 7.5 小结 105 第8章 微信登录 8.1 微信开放平台 107 8.1.1 UnionID机制 108 8.2 微信自动登录 109 8.2.1 数据结构设计 110 8.2.2 代码实现 112 8.2.3 使用UnionID登录...

    实现自定义地图上面的图标

    通过学习和理解这个源码示例,开发者不仅可以掌握在iOS上实现自定义地图图标的技能,还能了解到如何处理地图数据、优化性能以及增加用户交互性,这对于任何涉及地图功能的iOS应用都是必不可少的知识。

    APICloud工具

    2. **一站聚合功能**:APICloud平台提供了丰富的API接口,覆盖了地图、支付、推送、社交网络等多种功能,开发者无需单独集成各个SDK,只需简单调用API,即可实现所需功能,大大节省了开发时间和精力。 3. **多平台...

    开发者头条第三天

    6. **移动开发**:Android和iOS的最新SDK、开发工具及设计规范,如Flutter跨平台开发,iOS的Swift语言新特性等。 7. **DevOps**:持续集成/持续部署(CI/CD)工具如Jenkins,容器化技术Docker和Kubernetes,以及自动...

    GaodeMapDemo.rar

    在移动应用开发领域,地图服务是不可或缺的一部分,而高德地图作为国内领先的地图服务商,提供了丰富的API和SDK,为开发者提供了强大的地图集成能力。"GaodeMapDemo.rar"这个压缩包文件,正是一个关于高德地图API...

Global site tag (gtag.js) - Google Analytics