更新记录

1.0(2024-07-11)

初始化发布


平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 14.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:12 - 17

原生插件通用使用流程:

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


/ Title: XF-alphaPlayer Description:XF-alphaPlayer /

[playVideo](#a1) [playVideoByDict](#a2) [stopVideo](#a3) [addDelegate](#a4) [removeDelegate](#a5)

概述

XF-alphaPlayer实现了播放透明视频动画特效,可以通过制作Alpha通道分离的视频素材,再在客户端上通过OpenGL ES重新实现Alpha通道和RGB通道的混合,从而实现在端上播放带透明通道的视频。

这套方案对设计师而言明显降低了特效的制作成本,对于客户端而言有着更可靠的性能和稳定性,且相比cocos2d引擎有着更低的入门门槛和维护成本,为复杂动画的实现提供了一种全新的方式,新的复杂动画开发将会变得更加简单高效。

模块调用

<XF-alphaPlayer ref='alphaPlayer' style="width:300;height:400">
</XF-alphaPlayer>

插件接口

playVideo

播放透明视频

playVideo({params},callback(ret))

params

sourcePath:

  • 类型:字符串型
  • 描述:(必填项)设置要播放透明视频的文件夹路径(内含config.json和heartbeats.mp4文件)
    ->config.json
    {
    "portrait": {
        "align": 2,
        "path": "heartbeats.mp4",
    },
    "landscape": {
        "path": "heartbeats.mp4",
        "align": 8
    }
    }
    ->heartbeats.mp4

orientation:

  • 类型:数字型
  • 描述:(可选项)横屏还是竖屏显示(0:竖屏,1:横屏)
  • 默认值:0

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码

this.$refs.alphaPlayer.playVideo({
    //sourcePath: "/storage/emulated/0/alphaVideoGift/demoRes"
    sourcePath: "_www/static/TestResource/heartbeats"
}, function(ret){
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

playVideoByDict

播放透明视频

playVideoByDict({params},callback(ret))

params

portraitAlign:

  • 类型:数字型
  • 描述:(可选项)竖屏布局显示逻辑
  • 默认值:0

portraitPath:

  • 类型:字符串型
  • 描述:(必填项)竖屏视频资源路径

landscapeAlign:

  • 类型:数字型
  • 描述:(可选项)横屏布局显示逻辑
  • 默认值:0

landscapePath:

  • 类型:字符串型
  • 描述:(必填项)横屏视频资源路径

orientation:

  • 类型:数字型
  • 描述:(可选项)横屏还是竖屏显示(0:竖屏,1:横屏)
  • 默认值:0

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码

this.$refs.alphaPlayer.playVideoByDict({
   portraitPath: "/storage/emulated/0/alphaVideoGift/demoRes/demo_video.mp4",
    landscapePath: "/storage/emulated/0/alphaVideoGift/demoRes/demo_video.mp4"
}, function(ret){
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopVideo

停止视频播放

stopVideo(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码


this.$refs.alphaPlayer.stopVideo(function(ret) {
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

addDelegate

添加播放事件监听

addDelegate(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    eventType: 'onFinish',//onStart onFinish
}

示例代码


this.$refs.alphaPlayer.addDelegate(function(ret) {
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

removeDelegate

移除播放事件监听

removeDelegate(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码


this.$refs.alphaPlayer.removeDelegate(function(ret) {
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

隐私、权限声明

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

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

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

暂无用户评论。

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