DuanshuSDK 1.0.4

DuanshuSDK 1.0.4

ddcoreFiro 维护。



  • ddcore

简介

短书 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

H5 API 文档

作者

License

MIT