更新记录

1.1.6(2023-11-20)

  1. ios直播增加跑马灯显示

1.1.5(2023-11-12)

  1. 修复ios插件库冲突问题

1.1.4(2023-10-27)

  1. 修复ios自动横屏问题
  2. 修复安卓下拉刷新库缺失问题
查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.0 - 10.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:11 - 16

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


获得场景视频云直播插件使用说明

插件地址

本插件提供跳转原生云直播页面的功能(基于获得场景视频云直播 4.12.0 版本)

插件ID:Bokecc-CcLiveUniPlugin

开发环境:HBuilder 3.8.7及以上,Android系统 5.0及以上

在manifest.json的配置中勾选插件所需要权限:

        <!--云直播SDK需要权限-->
    <!--请求网络-->
    <uses-permission android:name="android.permission.INTERNET" />
    <!--存储运行日志-->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <!--网络状态判断-->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
    <!--连麦相关权限-->
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.BLUETOOTH" />

    <!--demo额外权限-->
    <!--扫码震动-->
    <uses-permission android:name="android.permission.VIBRATE" />

Plugin提供的API

API 描述 备注
loginLive(JSONObject options) 登录直播页面 options需包含参数:roomIdaccountIduserName(即viewername,免登录登录方式传递空字符串)、password(即viewertoken,无密码可传递空字符串),可选参数:viewerCustomUaviewerCustomInfo 参数含义disAllowCapture :防录屏开关(字符串,“1”防录屏开,“0”防录屏关,默认关闭)、secondaryVerify:次验证开关(字符串,“1”次验证开,“0”次验证关,默认关闭)
loginReplay(JSONObject options) 登录回放页面 options需包含参数:roomIdaccountIdrecordIduserName(即viewername)、password(即viewertoken,无密码可传递空字符串)、disAllowCapture :防录屏开关(字符串,“1”防录屏开,“0”防录屏关,默认关闭)、secondaryVerify:次验证开关(字符串,“1”次验证开,“0”次验证关,默认关闭)
enterLocalReplay(JSONObject options) 进入离线回放页面 options传递空对象

使用方式

  1. 引入插件

    插件市场搜索:获得场景视频云直播插件

    1.1 离线集成

    下载离线包于uniapp项目nativeplugins目录下,打开manifest.json文件,选择App原生插件配置,选择本地插件,选中Bokecc-CcLiveUniPlugin插件。

    1.2 云端引用

    将插件绑定至自己的DCloud账号,打开manifest.json文件,选择App原生插件配置,选择云端插件,选中Bokecc-CcLiveUniPlugin插件。

  2. 打开manifest.json,点击App模块配置,勾选VideoPlayer(视频播放)模块(目前版本安卓打包需要,ios打包不需要勾选)

  3. 示例代码

    var ccLiveUniPlugin = uni.requireNativePlugin("Bokecc-CcLiveUniPlugin")
     登录直播:
     ccLiveUniPlugin.loginLive({
                        'roomId': _this.roomId,
                        'accountId': _this.accountId,
                        'userName': _this.userName,
                        'password': _this.password,
                        'viewerCustomUa': _this.viewerCustomUa,
                        'viewerCustomInfo': _this.viewerCustomInfo,
                        'disAllowCapture': _this.disAllowCapture?'1':'0',
                        'secondaryVerify': _this.secondaryVerify?'1':'0'
                    }, (ret) => {
                        let data = JSON.parse(ret);
                        uni.hideLoading();
                        uni.showToast({
                            title: data.msg,
                            icon: "none"
                        })
                        setTimeout(()=>{
                            _this.loginButtonEnable = true;
                        },5000)
                    })
    
     登录回放:
     ccLiveUniPlugin.loginReplay({
                    'roomId': this.roomId,
                    'accountId': this.accountId,
                    'recordId': this.recordId,
                    'userName': this.userName,
                    'password': this.password,
                    'secondaryVerify':this.secondaryVerify?'1':'0',
                    'disAllowCapture': this.disAllowCapture?'1':'0'
                }, (ret) => {
                    let data = JSON.parse(ret);
                    uni.hideLoading();
                    uni.showToast({
                        title: data.msg,
                        icon: "none"
                    });
                    setTimeout(()=>{
                        _this.loginButtonEnable = true;
                    },2000);
                })
    
     进入离线回放:
     ccLiveUniPlugin.enterLocalReplay({
                }, (ret) => {
                    let data = JSON.parse(ret);
    
                })

FAQ

  1. 云打包报错,提示包冲突问题

    目前SDK包含一些三方模块,不能保证其他厂商的原生插件也包含这些模块,所以当产生冲突时,需要反馈客服并提供相关冲突报错信息。

    如果您同时集成 云课堂或云点播插件,可能会产生公共库冲突问题,如遇到冲突问题,也请联系客服反馈。

  2. 云打包正常,执行插件方法报异常

    检查插件ID是否正确

  3. 插件列表没有当前插件

    需要检查D-Cloud账号是否绑定插件

  4. 业务界面UI支持修改么

    由于插件基于原生Demo并面向aPaas(应用程序平台即服务),故不支持业务界面的UI修改

相关文档链接

获得场景视频云直播相关文档:https://doc.bokecc.com/live/

Uniapp原生插件开发教程:https://nativesupport.dcloud.net.cn/NativePlugin/course/android

隐私、权限声明

1. 本插件需要申请的系统权限列表:

1. 网络权限(INTERNET):请求云直播服务器实现云直播相关功能 2. 监听网络状态(ACCESS_NETWORK_STATE):监听网络状态改变实现断线重连的功能 3. 获取网络状态 (ACCESS_WIFI_STATE):获取网络状态来进行网络友好度提示 4. 摄像头权限(CAMERA):进行音视频互动需要按需采集摄像头画面 5. 麦克风相关权限(RECORD_AUDIO):进行音视频互动需要按需采集音频 6. 蓝牙,获取蓝牙连接状态(BLUETOOTH):连麦功能需要 7. 允许程序发现和配对蓝牙设备(BLUETOOTH_ADMIN):连麦功能需要 8. 防止锁屏(WAKE_LOCK):音视频互动过程中防止屏幕自动关闭 9. 文件读写权限(WRITE_EXTERNAL_STORAGE、READ_EXTERNAL_STORAGE):文件读写

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

SDK名称: 获得场景视频云直播 收集内容: 设备相关信息(例如:设备型号、操作系统版本、唯一设备标识符等软硬件特征信息)、设备所在位置相关信息(例如:IP地址)、设备接入网络的方式和类型(例如:WiFi、4G网络等)。 用户信息:基于您使用获得场景视频服务而产生的用户访问记录、行为记录以及使用的SDK版本等。 收集目的: 用户行为及服务质量统计分析,并根据设备信息,在观看在线视频时进行网络调度调优,根据不同网络类型给用户提示等,提供更加刘畅的播放体验; 隐私协议内容地址:https://admin.bokecc.com/agreement.bo

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

作者未提供license.md

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问