伯索开放平台
首页API文档SDK文档伯索官网
首页API文档SDK文档伯索官网
  1. iOS版本
  • 直播SDK接入
    • WEB版本
      • WEB版本
    • iOS版本
      • IOS版本
    • Android版本
      • Android版本
  • 微课SDK接入
    • WEB版本
      • WEB版本
    • iOS版本
      • IOS版本
    • Android版本
      • Android版本
  • 批注SDK接入
    • Web版本
      • Web版本
    • iOS版本
      • IOS版本
    • Android版本
      • Android版本
  • 签名加密
    • 签名加密
  • 回调接口接入流程
    • 回调接口接入流程
  • 文档解析接入方式
    • 文档解析接入方式
  • 历史课堂接入方式
    • 历史课堂接入方式
  • 历史课堂转视频接入方式
    • 历史课堂转视频接入方式
  • 历史课堂/微课下载接口
    • 历史课堂/微课下载接口
  1. iOS版本

IOS版本

一.引入项目
1、参考下图引入项目
批注SDKios1.png
2、如图选择 Add Files... ,选择目录的 PlasoHomeworkSDK.framework 加入
批注SDKios2.png
3.添加完成后如图所示:
批注SDKios3.png
4.将压缩包内的 WebRTC.framework同样⽅式加入。
二.使用方法
1.引用头文件
#import <PlasoHomeworkSDK/PlasoHomeworkSDK.h>;
2.初始化方法
/// 初始化批注SDK
/// @param appId appId 由伯索分配的开发者账号id
/// @param imageUrls 图片链接数组
/// @param exerciseId 一份作业的唯一标识,由使用者生成
/// @param multiOutput 是否返回多个结果(一张图片对应一个结果), 默认值为false 
- (instancetype)initWithAppId:(NSString *)appId
                    imageUrls:(NSArray *)imageUrls
                   exerciseId:(NSString *)exerciseId
                  multiOutput:(BOOL)multiOutput
3.调用说明
  a. PlasoHomeworkSDK.h 中 YXTHomeworkAnnotationSDKDelegate 协议中
@required 两个方法 录制微课 和 上传批注内容 触发请求签名;
@required
/// 点击批改⻚⾯‘录制微课’会调⽤此⽅法,获取 signQuer,取得录制微课的签名 ,
callBackSignQuery ⽅法回传 signQuery
/// @param recordId 当前录制id
- (void)plasoHWSDKLetAnnotationVC:(YXTHomeworkAnnotationVC *)antVC
getWeikeUrlWithRecordId:(NSString *)recordId;   



/// 发送作业所需的query,会在点击发送按钮的时候被批改⻚⾯调⽤
/// @return 上传所需的签名
- (void)plasoHWSDKGetSendQueryOfAnnotationVC:(YXTHomeworkAnnotationVC *)antVC;
@optional 功能如注释所示
@optional
/// 播放作业⾥的微课时会调⽤此⽅法
/// @param weikeId 微课Id
- (void)plasoHWSDKLetAnnotationVC:(YXTHomeworkAnnotationVC *)antVC playWeike:   
 (NSString *)weikeId;


/// 上传成功回调
/// @param success 成功与否
/// @param recordDictArr ⽣成的批注结果
/**{ "recordId": "5d6492469e95d05722159626", // 伯索⽣成的作业记录的id,在播放作业的
时候⽤到,使⽤者可以配合exerciseId作⼀⼀对应来存放
 "accuracy": 0.5, // 正确率
 "grade": 0, // [努⼒', '过关', '不错', '良好', '优秀'],返回的数字和数组下标对应
 "correctNum":0,//正确个数
 "wrongNum":0//错误个数
} */
- (void)plasoHWSDKLetAnnotationVC:(YXTHomeworkAnnotationVC *)antVC
uploadSuccess:(BOOL)success withRecordDictArr:(NSArray<NSDictionary *>
*)recordDictArr;
作业批注的结果地址根据返回的结果格式
{ "recordId": "5d6492469e95d05722159626", // 伯索⽣成的作业记录的id,在播放作业的时候
⽤到,使⽤者可以配合exerciseId作⼀⼀对应来存放
 "accuracy": 0.5, // 正确率
 "grade": 0, // [努⼒', '过关', '不错', '良好', '优秀'],返回的数字和数组下标对应
 "correctNum":0,//正确个数
 "wrongNum":0//错误个数
 }
b. 回传 录制微课 和 上传批注内容 的签名,拿到签名后,需要调⽤⽅法回传:
///上传所需的签名
- (void)callBackSignQuery:(NSString *)signQuery withSceneType:   
 (PlasoHWSDKSignQuerySceneType)sceneType;
4.功能配置
backResult :点击退出批注⻚⾯,触发block回调;
gradeIsOn :评分功能打开,default true;
weikeIsOn :录课开关 default false (暂未放开);
cloudBoxIsOn :资料中⼼开关 default false (暂未放开)。  
三.注一
url ⼀定要使⽤https协议,前缀为:https://wwwr.plaso.cn/static/sdk/annotate/5.00/?后 跟参数,使⽤& 符号拼接, 示例:https://wwwr.plaso.cn/static/sdk/annotate/5.00/?appType=ann otateSDK&appId=plaso-sdk-demo-id&exerciseId=abcd1234
四.注二
apiList中的 getSendQuery⾥需要的⽣成签名,请参考 签名加密 。 需要参与签名的业务参数有:
参数名说明
exerciseId客户⾃⼰⽣成的唯⼀作业id。
beginTime签名起效时间, Unix epoch格式,单位秒。
签名函数⼀定调⽤服务端服务, 进⾏基本鉴权, ⼀定不要将 appkey 明⽂暴露在js代码⾥。
修改于 2025-03-20 06:44:15
上一页
iOS版本
下一页
Android版本
Built with