简介
短书 H5-Mobile-SDK-iOS。第三方用户通过集成此 SDK,根据接口规范重写 获取用户信息
等方法后,第三方 App 中嵌入的短书的 H5 页面,则能通过 JavaScript 获取对应信息。
安装
通过 CocoaPods 安装
pod 'DuanshuSDK', '1.0'
安装注意事项
DuanshuSDK.framework
中 JavaScript 与 WebView 通信,使用第三方库 WebViewJavascriptBridge,因此用户在使用时需要依赖 'WebViewJavascriptBridge'。
pod 'WebViewJavascriptBridge', '6.0'
SDK 使用以及 API
用户需要使用 SDK 提供的 DSUWebview
加载短书 H5 页面,并实现 DSUWebViewDelegate
代理对应的方法,详细使用请参考 DuanshuSDK Demo
。
@protocol DSUWebViewDelegate <NSObject>
@optional
/**
获取用户信息
@param param h5传参
@param complete 成功获取用户信息后回调
complete 回调参数userInfo格式说明
{
"userName": "用户名",
"userId": "用户id",
"avatarUrl": "用户头像链接",
"telephone": "绑定手机号"
}
*/
- (void)dsu_getUserInfoWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
开始录音
@param param h5传参
@param complete 成功开始录音执行回调
@param timeoutBlock 录音超过最大时长后(建议最大时长120秒),自动结束录音,自动回调
timeoutBlock 回调参数userInfo格式说明
{
"localPath": "录音文件的本地暂存文件路径"
}
*/
- (void)dsu_startRecordWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete
timeoutBlock:(DSUCallbackBlock)timeoutBlock;
/**
结束录音
@param param h5传参
@param complete 成功开始录音执行回调
complete 回调参数userInfo格式说明
{
"localPath": "录音文件的本地暂存文件路径"
}
*/
- (void)dsu_stopRecordWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
播放音频
@param param h5传参 格式说明:{"record_url":"http://xxx.mp3"}
@param complete 成功开始播放执行回调
@param progressBlock 进度回调 注意:预留接口,暂未实现
@param endBlock 播放完成后回调
如果用户调用暂停`pauseVoice`后,又继续调用播放方法,并且URL相同,则原音频继续播放,不重新开始
*/
- (void)dsu_playVoiceWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete
progressBlock:(DSUProgressBlock)progressBlock
endBlock:(DSUCallbackBlock)endBlock;
/**
暂停音频
@param param h5传参 格式说明:{"record_url":"http://xxx.mp3"}
@param complete 成功暂停播放执行回调
*/
- (void)dsu_pauseVoiceWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
停止音频
@param param h5传参 格式说明:{"record_url":"http://xxx.mp3"}
@param complete 成功停止音频播放执行回调
*/
- (void)dsu_stopVoiceWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
选择图片
@param param h5传参 格式说明:{"count":1}
@param complete 选取图片完成后执行回调
complete 回调参数userInfo格式说明
[
"图片本地路径1",
"图片本地路径2"
]
*/
- (void)dsu_chooseImageWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
预览图片(单张)
@param param h5传参 格式说明:{"imgUrl":"http://xxx_1.jpg"}
@param complete 成功预览图片执行回调
*/
- (void)dsu_previewImageWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
预览图片(多张)
@param param h5传参 格式说明:{
"position":0,
"pics":[
"http://xxx_1.jpg",
"http://xxx_2.jpg"
]
}
@param complete 成功预览图片执行回调
*/
- (void)dsu_previewPicWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
/**
分享
@param param h5传参 格式说明:{
"title": “分享标题”,
"content": “分享描述”,
"picurl": “分享图片链接”,
"url": “分享内容链接”
}
@param complete 成功分享执行回调
*/
- (void)dsu_shareWithParam:(id)param
completeBlock:(DSUCallbackBlock)complete;
@end
Demo 使用注意事项
- 首次使用前,需要先运行 pod install。
- Demo 中录音功能使用了第三方库 mp3lame 进行音频转码。
- 需要关闭
bitcode
。
- 需要关闭
- Demo 中选择图片功能使用了第三方库 TZImagePickerController。
- Demo 中图片预览功能使用了第三方库 MWPhotoBrowser。