聚合数据iOS SDK 使用说明文档

原创 2015年10月29日 21:20:19

//
//  ViewController.m
//  JuheAdk_demo
//
//  Created by ThinkLand on 8/15/14.
//  Copyright (c) 2014 ThinkLand. All rights reserved.
//

#import "ViewController.h"
#import "JHAPISDK.h"
#import "JHOpenidSupplier.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, self.view.bounds.size.width - 40, 50);
    [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
{
    //    ***************** LIFE ***************
    //    /*IP*/
    NSString *path = @"http://apis.juhe.cn/ip/ip2addr";
    NSString *api_id = @"1";
    NSString *method = @"GET";
    NSDictionary *param = @{@"ip":@"www.juhe.cn", @"dtype":@"json"};
    JHAPISDK *juheapi = [JHAPISDK shareJHAPISDK];
    
    [juheapi executeWorkWithAPI:path
                          APIID:api_id
                     Parameters:param
                        Method:method
                        Success:^(id responseObject){
                            if ([[param 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)test:(NSString *)path Did:(NSString *)did parameters:(NSDictionary *)parameters{
    
}

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

@end

 

 

 

 

 

 

聚合数据iOS SDK

使用说明文档

 

 

 

 

 

 

 

 

时间:2014/11/6

目录

 

1     版本说明........................................................................................................................................................................ 3

2    APP集成聚合数据SDK..................................................................................................................................... 3

2.1     聚合数据SDK说明......................................................................................................................................... 3

2.2     集成聚合数据SDK的方法....................................................................................................................... 3

2.3     初始化聚合数据SDK.................................................................................................................................... 4

2.4     查找调用接口的参数值............................................................................................................................... 4

2.5     编写代码调用具体的数据接口............................................................................................................. 6

2.6     返回数据实例....................................................................................................................................................... 7

3     聚合数据后台使用方法:.............................................................................................................................. 8

3.1     用户的注册与登录........................................................................................................................................... 8

3.2     开发者申请应用的openid....................................................................................................................... 9

3.3     开发者的appkey........................................................................................................................................... 10

3.4     开发者应用的概况....................................................................................................................................... 10

3.5     认证管理............................................................................................................................................................... 11

3.6     套餐管理............................................................................................................................................................... 12

3.7     数据管理............................................................................................................................................................... 13

3.8     数据统计............................................................................................................................................................... 14

 

 

 

 

 

1  版本说明

 

版本

说明

作者

时间

备注

V1.0.0

1,完成聚合数据SDK开发包和调用实例

Edward.Shi

2014/9/28

 

V1.0.2

1, 去除一些字段,简化调用流程

Bill.Fang

2014/10/30

 

V2.0.0

1, 去除不必要的字段,改为从聚合数据API Web端,获取调用接口参数。

2,增加调用的灵活性,与便捷。改变聚合数据SDK的接入方式

Bill.Fang

2014/11/6

 

V2.0.1

1,增加Swift Demo示例,并更新文档

Bill.Fang

2014/11/12

 

V2.0.2

1, 修复网络请求方式的一个bug

Bill.Fang

2014/12/11

 

 

 

2   APP集成聚合数据SDK

2.1  聚合数据SDK说明

JuheApisSDK是一个工具,内部集成了聚合数据平台除电商类所有接口。包括生活常用,位置信息服务,金融基金,影视娱乐,全网数据,其他数据留个大类,再此大类之下又分小类,每个小类下又包含数目不等的实现具体功能的接口。

 

2.2  集成聚合数据SDK的方法

将JuheApisSDK.a以及头文件“include”文件夹添加到自己的工程中来,添加依赖库CoreTelephony.framework, AdSupport.framework, CoreLocation.framework。

   注:

      1,开发环境使用xCode6.0以上版本进行开发,

2,将AppDelegate.m改为AppDelegate.mm,或者选中项目,在右侧的设置窗口中选择:TARGETS->XXX(项目名)->Build Phases->Link Binary With Libraries,添加libc++.dylib。

 

Objective-C工程如图1-2所示:

 

图1-2:添加聚合数据SDK以及依赖的包(Objective-C)

 

Swift工程如图1-3所示:

2.3  初始化聚合数据SDK

在调用接口之前需要初始化聚合数据SDK,并绑定用户唯一的openid。在调用具体的接口之前只需要绑定一次即可。(openid注册与查看步骤参照2.2)

引入聚合数据SDK的头文件:JHAPISDK.h, JHOpenidSupplier.h

 

Objective-C工程代码示例如下:

 

#import "JHAPISDK.h"

#import "JHOpenidSupplier.h"

 

- (void)viewDidLoad {

    [super viewDidLoad];

   [[JHOpenidSupplier shareSupplier] registerJuheAPIByOpenId:@"开发者申请到的openId"];

}

 

 

Swift工程代码示例如下:

 

- (void)viewDidLoad {

   var jhOpenidSupplier = JHOpenidSupplier.shareSupplier();

   jhOpenidSupplier.registerJuheAPIByOpenId("开发者申请到的openId ")

}

 

 

2.4  查找调用接口的参数值

在聚合数据API官网上http://www.juhe.cn/docs查看接口,并得到调用接口必须的字段:API, APIID,Method以及需要设置的字典类型参数,调用对应接口。

我们以“IP/域名查询地址”接口作为事例,进行介绍:

 

例:生活常用 ->IP地址 -> 根据IP/域名查询地址 ,打开 “http://www.juhe.cn/docs/api/id/1”后进入API详细页面后,得到api,api_id,method, param字典类型值的步骤如下:

 

api,api_id,method的获取如图2所示:

图1-4-1,获取api,api_id和method方法

 

Param的获取方法:

图1-4-2,获取字典类型参数值的方法

2.5  编写代码调用具体的数据接口

 

Objective-C工程代码示例如下:

 

 

    //    /*IP*/

    NSString *path = @"http://apis.juhe.cn/ip/ip2addr";

    NSString *api_id = @"1";

    NSString *method = @"GET";

    NSDictionary *param = @{@"ip":@"www.juhe.cn",@"dtype":@"json"};

    JHAPISDK *juheapi = [JHAPISDKshareJHAPISDK];

   

    [juheapi executeWorkWithAPI:path

                          APIID:api_id

                     Parameters:param

                        Method:method

                        Success:^(id responseObject){

                            if ([[paramobjectForKey:@"dtype"]isEqualToString:@"xml"]) {

                                NSLog(@"***xml*** \n %@", responseObject);

                            }else{

                                int error_code = [[responseObjectobjectForKey:@"error_code"]intValue];

                                if (!error_code) {

                                    NSLog(@" %@", responseObject);

                                }else{

                                    NSLog(@" %@", responseObject);

                                }

                            }

                        } Failure:^(NSError *error) {

                            NSLog(@"error:   %@",error.description);

                        }];

 

 

 

 

Swift工程代码示例如下:

 

 

    //    /*IP*/

        var path = "http://apis.juhe.cn/ip/ip2addr";

        var api_id = "1";

        var method = "GET";

        var param = ["ip":"www.juhe.cn","dtype":"json"];

        var juhepai = JHAPISDK.shareJHAPISDK();

       

        juhepai.executeWorkWithAPI(path, APIID: api_id, parameters: param, method: method,

            success:{responseObject in

                /*成功代码*/

                print(responseObject)

            },

            failure:{error in

                /*失败代码*/

                print(error)

            }

        )

 

2.6  返回数据实例

   返回数据具体的意义,请在具体接口Web页面进行相关查阅

 

返回数据结构

 

XML返回示例:

<?xml version="1.0" encoding="utf-8" ?>

<root>

    <resultcode>200</resultcode>

    <reason>Return Successd!</reason>

    <result>

        <area>江苏省苏州市</area>

        <location>电信</location>

    </result>

</root>

JSON返回示例:

{

   "resultcode":"200",

   "reason":"Return Successd!",

   "result":{

      "area":"江苏省苏州市",

      "location":"电信"

   }

}

 

 


3   聚合数据后台使用方法:

3.1  用户的注册与登录

打开聚合电商数据开放平台主页(http://www.juhe.cn/),用户打开登录页面,如图3-1-1所示,输入自己的用户名和密码,点击登陆按钮,即可登录到后台管理页面,如果用户没有用户名,点击“立即注册”按钮,即可进入注册页面,如图3-1-2所示

 

图3-1-1:登录页面

图3-1-2:用户注册页面

 

3.2  开发者申请应用的openid

登陆进系统后,点击右上角个人中心,如图3-2-1。

图3-2-1

我的数据->中心首页->账号信息-> OPENID,每个用户均分配有唯一的openid。

 

3.3  开发者的appkey

进入聚合数据接口(API),网址http://www.juhe.cn/docs,还是以生活常用->IP地址为例,进入IP地址接口使用说明页(http://www.juhe.cn/docs/api/id/1),如图:3-3-1

图3-3-1

 

用户申请过这个数据之后,用户会获取一个APPKEY,这个key在单独调用接口时是必选参数,在JuhAPISDK中不需要,只要绑定唯一的openid即可。

当用户未申请过该数据,点击右上角申请数据按钮,进入申请页面,按照提示,填写应用名称,(有些数据需要填写应用的包名,英文名bundle identifier),提交申请获取AppeKey。如图3-3-2:

图 3-3-2

3.4  开发者应用的概况

       进入用户后台,包括我的数据个人中心财务中心申请数据四个模块。

       我们现在需要进入我的数据,在左侧边栏中选择我的数据,右侧将显示用户在聚合数据平台申请的所有数据,用户需要找到  IP地址。如图3-4-1:

图3-4-1

申请的数据

认证管理:未认证的接口在申请2个月内需提交审核并通过,否则不能正常请求数据

申请时间

已购买套餐则提示服务到期时间。未购买增值服务则不显示。

接口剩余调用次数

套餐管理:购买套餐以及充值续费

数据管理:调用该数据的Appkey以及应用包名。

接口管理:接口文档以及教程

数据统计:接口的调用次数以及每小时请求数走势图

API测试工具

3.5  认证管理

用户在使用聚合数据完成了应用或网站的开发并上线,即可提交认证审核。开发期间,未审核的应用并不会影响接口的调用。申请的数据需要在2个月内提交审核并通过,否则将无法正常请求数据。

图3-5-1

3.6  套餐管理

开发者在测试阶段,系统会免费提供一定次数的调用量,供开发者测试。如果有大量的调用,则需要购买套餐。点击,进入购买套餐页面。如图3-6-1

图3-6-1

3.7  数据管理

管理数据接口的应用使用的Appkey,如果申请数据是填写过包名也显示,未填写则不显示。如图3-7-1

图3-7-1

3.8  数据统计

数据统计主要显示IP地址数据调用次数以及每小时请求数走势图

图3-8-1

版权声明:VIC

相关文章推荐

<Android 应用 之路> 聚合数据SDK

聚合数据介绍聚合数据是一个为智能手机开发者,网站站长,移动设备开发人员及图商提供原始数据API服务的综合性云数据平台。包含手机聚合,网站聚合,LBS聚合三部分,其功能类似于Google APIS。【来...

举例说明如何使用【聚合数据】的API接口

0 注册[聚合数据]的账号 登陆www.juhe.cn,如图,如果没有账号,注册一个(手机号或者邮箱注册),如果有直接登陆即可. 1 搜索所需的API接口 点击左上角[聚合数据],跳到聚...
  • ten_sory
  • ten_sory
  • 2017年04月01日 16:49
  • 10517

聚合数据api的使用

首先,去注册,并申请要使用的api(严格来讲是数据,但是确实是通过api得到数据),笔者一开始以为还要验证身份证,后来试了下才知道不用,所以步骤就不详细描述,我选择的是天气预报下的天气预报(还有个全国...

聚合数据API用法简介

IOS API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需...

ios 聚合数据接口调用demo :菜谱大全

https://www.juhe.cn/  注册 申请 菜谱大全  我的数据:  菜谱大全 左上角会看到AppKey 接口地址:http://apis.ju...

iOS SDK使用指南:利用UIDevice及NSLocale访问设备数据

iOS SDK使用指南:利用UIDevice及NSLocale访问设备数据 2012-08-07 09:06 核子可乐 译 51CTO.com 我要评论(0) 字号:T | T ...

iOS- 利用AFNetworking去管理从聚合数据上面请求到的数据

利用AFNetworking框架去管理从聚合数据上面请求到的数据 数据从JSON文档中读取处理的过程称为“解码”过程,即解析和读取过程,来看一下如果利用AFNetworking框架去...

安卓开发之使用第三方的聚合数据API,QQ测吉凶案、身份证号码查询。

在安卓开发中,肯定需要很多API接口, 比如天气获、快递实时信息、身份证号码查询和基本的短信验证码。API(Application Programming Interface,应用程序编程接口)是一些...

iOS SDK:预览和打开文档

http://mobile.tutsplus.com/tutorials/iphone/previewing-and-opening-documents-with-uidocumentinteract...
  • kmyhy
  • kmyhy
  • 2013年07月01日 17:39
  • 7776
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:聚合数据iOS SDK 使用说明文档
举报原因:
原因补充:

(最多只允许输入30个字)