溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

聚合數據iOS SDK 全國天氣預報演示示例

發(fā)布時間:2020-08-09 20:12:12 來源:網絡 閱讀:831 作者:SorosW 欄目:移動開發(fā)

1,將聚合數據SDK(JuheApis.framework)添加到你的程序中來,SDK依賴的包包括:


聚合數據iOS 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 p_w_picpathNamed:@"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 ) 

返回字段 :

聚合數據iOS SDK 全國天氣預報演示示例

聚合數據iOS SDK 全國天氣預報演示示例

2. 天氣種類及標識列表

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

返回字段 : 

聚合數據iOS SDK 全國天氣預報演示示例

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 )

返回字段 :

聚合數據iOS SDK 全國天氣預報演示示例

6. 支持城市列表

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

返回字段 : 

聚合數據iOS SDK 全國天氣預報演示示例

7 . 全國天氣預報錯誤碼

聚合數據iOS SDK 全國天氣預報演示示例

5, 更多聚合數據SDK接口,訪問這里: http://www.juhe.cn/juhesdk/idocs


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI