做项目时有个需求,就是播放腾讯视频,直接给的播放链接,比如:https://v.qq.com/x/page/b0136et5ztz.html (该链接是网上找的)。最初的做法,就是用vue开发h5页面实现播放腾讯视频,然后嵌入到小程序中。但是发版时,发现不能播放。最后无奈只能用小程序原生代码去实现播放腾讯视频。具体整个过程如下:

1. Vue实现腾讯视频播放

1.1 方式1:使用iframe

简单实现如下:

<template><div class="videoPlay"><iframe ref="iframe" class="video-iframe" style="z-index:1;" :src="videoSrc" frameborder="0"  scrolling="no" allowfullscreen="true"   webkitallowfullscreen="true" mozallowfullscreen="true"></iframe></div>
</template>

如果后台返回的是链接:https://v.qq.com/x/page/b0136et5ztz.html,则只需要取“b0136et5ztz”这部分

<script>export default {data() {return {videoSrc:'',};},mounted(){var that = this;var videoUrl = 'https://v.qq.com/x/page/b0136et5ztz.html'var t = videoUrl.split('/');var vid = t[t.length-1].split('.')[0];//使用相对协议,同时支持http和httpsvar videoSrc = '//v.qq.com/iframe/player.html?vid='+vid+'&tiny=0&auto=0';this.$set(this,'videoSrc',videoSrc)}}
</script>

注意:这个方式的实现,有个问题,就是部分手机不可以全屏看视频

1.2 方式1:使用腾讯视频统一播放器

文档:https://m.v.qq.com/txp/v3/

下载txplayer.js:https://vm.gtimg.cn/tencentvideo/txp/js/txplayer.js,放到合适的目录下

<template><div class="videoPlay"><div id="container" class="video-wrapper"></div></div>
</template>

引入 txplayer.js

<script>import './txplayer.js'export default {data() {return {videoSrc:'',};},methods: {playerInit(vid){var video = new tvp.VideoInfo();video.setVid(vid);var player =new tvp.Player();player.create({width: "100%",       //播放器的宽度height: "19rem", //播放器的高度video: video,       //默认的视频对象modId: "container",       //默认的 DOM 元素 IDautoplay: false,});player.onplaying = function (vid){console.log(vid)}player.onallended = function (vid){console.log(vid)};}},mounted(){var that = this;var videoUrl = 'https://v.qq.com/x/page/b0136et5ztz.html'var t = videoUrl.split('/');var vid = t[t.length-1].split('.')[0];this.playerInit(vid);}}
</script>

实现效果如下:

如上实现方式,最终嵌入小程序中,发布后并不可以播放,原因可能是因为,最终解析出来的视频实际地址,这个地址是多变的,而我们所知,小程序所有用到的地址,都需要到小程序后台进行域名配置。不确定性的地址导致我们并不能完全的配置。

所以我们只能弃掉如上方式,使用小程序原生代码去实现。具体如下:

2. 微信小程序实现腾讯视频播放

2.1 登录小程序后台:https://mp.weixin.qq.com/,添加“腾讯视频”插件,步骤如下:

2.1.1 设置->第三方设置->添加插件

2.1.2 搜索“腾讯视频”,选择插件,点击添加即可。

2.1.3添加成功后,点击“详情”

2.1.4 查看“腾讯视频”插件信息,复制AppID(wxa75efa648b60994b)和选择一个版本号(比如1.3.9),开发用到。

此外,点击“开发文档”,根据开发文档,进行开发。

2.2 开发

2.2.1 app.json里面引入插件,其中version值为上面获取的版本号(注意插件版本号填最新的版本号),provider为上面获取的AppID【看步骤2.1.4】。

"plugins": {"tencentvideo": {"version": "1.3.9","provider": "wxa75efa648b60994b"}},

2.2.2 在所需引入腾讯视频的页面的json文件插入如下:

"usingComponents": {"txv-video": "plugin://tencentvideo/video"}

2.2.3 wxml文件

注意:如果是引入多个<txv-video>组件,则每个<txv-video>组件的playerid的值必须是不同的,唯一的。

<view><txv-video class="video-player" vid="{{vid}}" playerid="txv1"  bindplay="videoPlay" bindpause="videoPause" bindended="videoEnd"></txv-video>
</view>

2.2.4 js文件

// pages/tcVideo/tcVideo.js
Page({/*** 页面的初始数据*/data: {vid: "b0136et5ztz",txvContext: null,},/*** 生命周期函数--监听页面加载*/onLoad: function (options) {var txv = requirePlugin("tencentvideo");var txvContext = txv.getTxvContext('txv1') // txv1即播放器组件的playerid值this.setData({txvContext: txvContext,})},videoPlay: function (e) { //正在播放},videoPause: function () {console.log("暂停播放----")},videoEnd: function () {console.log("结束播放----")},
})

实现效果如下:

Vue/微信小程序 -- 引入腾讯视频相关推荐

  1. 微信小程序引入腾讯视频插件

    首先在微信公众平台引入插件 在设置--第三方设置里面 申请使用插件 appid:wxa75efa648b60994b 根据文档写代码 文档地址:https://mp.weixin.qq.com/wxo ...

  2. 微信小程序使用腾讯视频插件-uniapp-详细篇(2022.1.27)

    微信小程序使用腾讯视频插件-uniapp篇(无需资质审核包过) 1.添加插件:微信小程序平台-设置-第三方设置-添加插件-搜索:腾讯视频 2.在uniapp-manifest.json中-源码视图,添 ...

  3. 小程序php调用腾讯视频,如何用微信小程序来看腾讯视频?观看视频的办法

    软件安装:腾讯视频 腾讯视频于2016年底提出了全新的品牌理念--"不负好时光",以更加年轻化.更能引起用户情感共鸣的定位全新亮相,并展现了全新品牌标识.秉承"内容为王, ...

  4. 微信小程序引用腾讯视频

    文章转自 https://www.jiezhe.net/post/38.html tips:腾讯视频上传需要认证,上传身份证图片时如果报错,就换个QQ号,我一个QQ号能上传,另一个QQ号就不行,应该是 ...

  5. C# 利用正则表达式获取文本中的https网址并替换新的对应的值,微信小程序播放腾讯视频

    后台用KindEditor传了好几个视频地址,需要在微信小程序播放,复文本框写的内容是保存在数据库的一个字段的,就像下面这样,像这小程序播放,需要解析除真正的视频地址,所有需要获取里面的两个视频地址, ...

  6. 微信小程序--引入腾讯位置服务插件

    1.首先打开微信开发文档,点击组件---点击地图map 2.点击小程序地图插件可以查看 腾讯地图 操作指南 3.打开微信公众平台----打开第三方设置---设置----第三方设置---插件管理里面添加 ...

  7. 微信小程序嵌入腾讯视频源

    今天写小程序时候遇到个坑,就是使用vedio组件时候,一开始没想好,本以为腾讯视频会有类似于优酷之类的提供分享外链功能,结果进去一看,只能复制视频网址,本来想着要么F12获取地址吧,麻烦点就麻烦点,但 ...

  8. 微信小程序-调用-腾讯视频-解决方案

    转载自:https://blog.csdn.net/sd19871122/article/details/80635181 1.首先我们从腾讯视频网站上找到一个视频网页的连接,格式是这样的 https ...

  9. 微信小程序接入腾讯视频插件

    前提条件:小程序需要申请成功腾讯视频插件 官方文档 https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wxa75efa648b60994b 1.ap ...

最新文章

  1. Gradle之FTP文件下载
  2. Algorithms_算法专项_Hash算法的原理哈希冲突的解决办法
  3. python gui编程框架_工程师必知的几个Python GUI框架
  4. 小波图像增强matlab,用Matlab实现基于小波变换的图像增强技术
  5. php syncml 协议,基于改进的SyncML协议的图像安全同步技术研究
  6. 为什么高手离不了Linux系统?我想这就是理由!
  7. vscode 文件编码转换_荐几个让你开发效率“飞起”的VS Code 插件
  8. [datatable]关于在DataTable中执行DataTable.Select(“条件“)返回DataTable的解决方法
  9. web安全day4--DHCP部署与安全
  10. 直播app源码,隐藏导航栏和状态栏
  11. 计算机显卡模式,电脑bios设置显卡图解
  12. 网易云易盾手游智能反外挂亮相ChinaJoy2018
  13. 如何免费编辑PDF文档?
  14. cmake的aux_source_directory
  15. 用python爬取今日头条上的图片_Python爬虫:抓取今日头条图集
  16. android 4.4.4最新微信,微信旧版本安卓4.4.4可用
  17. 字符叠加器 视频叠加器模块
  18. msbuild构建步骤_使用并行构建和多核CPU的MSBuild进行更快的构建
  19. scm概念的scm存储
  20. MAT400安全帽标签

热门文章

  1. Windows下cmd窗口连接mysql
  2. python-docx设置表格填充底色以及切分单元格(仅使用python-docx)
  3. 区块链开发公司发展前景广 区块链技术真的重要吗
  4. MyBatis Mapped Statements collection already contains value for xx.please check file [x]
  5. 计量经济学研究的利器-gretl
  6. 联想潮7000怎么安装Java_联想小新潮7000系统安装 怎么用u盘安装系统
  7. 我的Python实例一——BIM指数计算
  8. 引导区块链产业的主要原因是否影响正宇的发展
  9. Win11利用本地组策略编辑器解除网速限制
  10. iOS 微信、支付宝、银联支付组件的进一步设计