小雅OS开放平台文档

小雅OS开放平台文档

  • 快速入门
  • 客户端接入
  • 服务端接入

›iOS SDK

概述

  • 客户端接入

API 接入

  • WebSocket接口协议定义
  • Http接口协议定义
  • 调用样例
  • API 列表
  • 实体列表
  • 错误码

设备端

    Android SDK

    • 配置工程
    • 初始化
    • 功能
    • 回调
    • Demo 使用
    • 更新日志

    iOS SDK

    • 配置工程
    • 初始化
    • 功能
    • 回调
    • 更新日志

    C++ SDK

    • SDK获取方法
    • 环境要求
    • 目录结构
    • SDK架构
    • 调用示例
    • 接口文档

手机伴侣

    Android SDK

    • 接入准备
    • 账号模块
    • 内容模块
    • 反向控制
    • 设备管理模块
    • 技能模块
    • 蓝牙模块
    • 更新日志

    iOS SDK

    • 接入准备
    • 账号模块
    • 内容模块
    • 反向控制
    • 设备管理模块
    • 技能模块

内容页

    Android

    • 更新日志
    • 初始化

    iOS

    • 更新日志
    • 初始化

账号模块

合作方平台 Token 登录小雅 OS

/**
* 第三方平台登录/授权登录
*/
+ (void)loginWithThirdUid:(long)uid
thirdAccessToken:(nullable NSString*)token
completionBlock:(nullable void(^)(BOOL success))block;

需传入参数:

thirdUid:合作方平台的账号id(例如喜马拉雅账号id)

thirdAccessToken:合作方平台token(例如登录喜马拉雅账号后的token)

在登录前,需先登录登录合作方平台授权,例如喜马拉雅登录成功后,获取喜马拉雅id以及对应的access_token,再进行SDK登录。

[XYSDK loginWithThirdUid:self.xmAuthModel.uid
thirdAccessToken:self.xmAuthModel.access_token
completionBlock:^(BOOL success) {
    if (success) {

    }
}];

返回值如下:

success: BOOL类型,表示是否刷新成功

credential 登录

/**
* 第三方平台登录/授权登录
*/
+ (void)loginWithCredential:(nullable NSString*)credential
completionBlock:(nullable void(^)(BOOL success))block;

需传入参数:

credential:NSString类型,登录使用的凭证

刷新token

刷新小雅OS的token:

/**
* 刷新小雅OS token
*/
+ (void)refreshTokenCompletionBlock:(nullable void(^)(BOOL success))block;

SDK接口调用前会检查token是否过期,若过期会主动刷新token,因此正常情况下无需开发者刷新token

绑定喜马拉雅账号

当使用第三方账户登录(除喜马拉雅授权登录)、credential登录小雅OS后,账号并未与喜马拉雅关联,此时绑定的音箱不能享受喜马拉雅会员等服务。头文件引用:#import < XYServiceSDK/XYSDK+Account.h >。

查询喜马拉雅账号信息

查询接口主要提供是否已经绑定、绑定页面H5链接(未绑定)、绑定的喜马拉雅账号昵称(已绑定)等信息:

+ (void)requestXMLYUserInfo:(nullable void(^)(NSDictionary *__nullable result, NSError * _Nullable error))block;

返回数据如下:

 {
        "skillPtfId": "os.ptf.xmly.testsdkdemo",
        "qrcode": {
                "expiresIn": 600,
                "qrId": "76c226247e2741c2b9b0a2208e7329ff",
                "url": "https://mobile.ximalaya.com/passport-sign-mobile/qrcode/login/76c226247e2741c2b9b0a2208e7329ff?to=%E5%96%9C%E9%A9%AC%E6%8B%89%E9%9B%85"
            },
        "h5": {
                "loginPage": "http://api.uat.xiaoyastar.com/xy-os-ucenter/open/skill-login/h5?osAccessToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOjI0NTc3LCJza2lsbElkIjoib3Muc2tpbGwuMTQiLCJpc3MiOiJ4eS1vcy11Y2VudGVyIiwiZGV2aWNlSWQiOiJDMjZCQUQ3Ri1FMTdBLTQ5NzUtQUIyQS0wOTIzMjZCMDU2OEQifQ.9COYWvLfRFuggdJH5Sy6EnrGRW_rVM0xol3x2ep1F-M"
            },  // 绑定喜马拉雅的url
        "status": 0 // 绑定状态:0 未绑定, 1 已绑定,2 不需要绑定
}

绑定喜马拉雅、领取会员

为了方便绑定喜马拉雅账号,直接调用以下接口,以push的方式进入授权H5页面控制器:

+ (UIViewController *_Nonnull)loadSkillLoginPage:(NSString *_Nonnull)urlString deviceSn:(NSString *_Nonnull)sn deviceType:(XYOSDeviceType)deviceType completion:(nullable void(^)(void))block;

需传入参数:

urlString: 绑定H5页面的url(由查询接口获取) sn: 音箱sn deviceType: 设备类型(Nano、Home) block: 绑定完成的回调

解绑喜马拉雅账号

当小雅OS账号已绑定喜马拉雅账号,可主动解绑:

/**
 * 解绑喜马拉雅账号
 */
+ (void)requestThirdAccountUnbindCompletion:(nullable void(^)(NSDictionary *__nullable result, NSError * _Nullable error))block;
← 接入准备内容模块 →
  • 合作方平台 Token 登录小雅 OS
  • credential 登录
  • 刷新token
  • 绑定喜马拉雅账号
    • 查询喜马拉雅账号信息
    • 绑定喜马拉雅、领取会员
    • 解绑喜马拉雅账号
北京小雅星空科技有限公司 京ICP备19010603号