更新记录

1.0.2(2020-03-24)

1.修复离线打包 color 问题

1.0.1(2020-03-24)

1.清理不需要的文件

1.0(2020-03-24)

1.rtmp视频直播,flv视频直播

查看更多

平台兼容性

Android Android CPU类型 iOS
armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 ×

原生插件通用使用流程:

  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原生插件配置”->”云端插件“列表中删除该插件重新选择



<template>
    <view class="content">

        <!-- <button @click="startVideoPlay()">
                点击VideoPlay  
        </button> -->

        <mokan-android-video
            url="rtmp://58.200.131.2:1935/livetv/hunantv"
            style="width: 200;height: 200;">

        </mokan-android-video>
        <button @click="startPlay()" 
            style="width: 250;height: 50;">
                start  
        </button>
        <button @click="pausePlay()"
            style="width: 250;height: 50;">
                pause  
        </button>
        <button @click="restartPlay()"
            style="width: 250;height: 50;">
                restart 
        </button>
        <button @click="screenshotsFile()"
            style="width: 250;height: 50;">
                screenshotsFile 
        </button>
        <!-- <button @click="screenshotsBase64()"
            style="width: 250;height: 50;">
                screenshotsBase64 
        </button> -->
    </view>
</template>

<script>
    const videoPlay = uni.requireNativePlugin('Mokan-Android-VideoPlay');
    export default {
        data() {
            return {

            }
        },

        methods: {

            startPlay(){
                videoPlay.startPlay({
                        url: "rtmp://58.200.131.2:1935/livetv/hunantv"
                    }, result => {

                        videoPlay.showToast({
                            msg: result.type
                        });
                        switch (result.type) {
                            case 'error':
                                videoPlay.showToast({
                                    msg: result.msg
                                });
                                break;
                            case 'closeFullScreen':
                                break;
                            case 'openFullScreen':

                                    break;
                        }
                    });
            },
            pausePlay(){
                videoPlay.pausePlay();
            },
            restartPlay(){
                videoPlay.restartPlay();
            },
            screenshotsFile(){
                videoPlay.screenshots({
                    file_type:"file"
                },ret=>{
                    switch (ret.type) {
                        case 'screenshots':
                            videoPlay.showToast({
                                msg:ret.data.filePath
                            });
                            break;

                    }
                });
            },
            // 废弃该方法
            screenshotsBase64(){
                videoPlay.screenshots({
                    file_type:"base64"
                },retBase=>{
                    switch (retBase.type) {
                        case 'screenshots':
                            videoPlay.showToast({
                                msg:retBase.data.filePath
                            });
                            break;

                    }
                });
            }
        }

    }
</script>

<style>

</style>

隐私、权限声明

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

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

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

许可协议

作者未提供license.md

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