- live-player打开有声音,但是无视频显示为什么?
需求是: 从后台获取直播间列表,当点击一个直播间时候,由于获取直播间播放流和打开视频需要1——3秒才能显示视频,所以设计如下/1、先隐藏播放窗口,默认全屏显示背景图片。 2、获取播放流地址并打开,如果成功获取播放流且成功打开播放流,那么则先隐藏背景图片再显示视频。 由于如果开始不显示默认背景图片,则窗口显示全黑,用户体验感差。所以现在设计默认先显示背景图片是为了提高用户体验感。 目前真机调试发现,打开播放流成功,就是不显示主播的视频。但是有直播间声音。 布局文件 <view> <view class="liveplay-container" wx:if="{{isPlayer}}"> <live-player class="liveplayer" id='liveplayer' src="{{liveurl}}" mode ="RTC" autoplay bindstatechange="statechange" binderror="playerror" wx:if="{{isPlayer}}"> </live-player> </view> <view class="background-container" wx:if="{{isBackground}}"> <image class="background-img" src='{{backgroundImage}}' mode='scaleToFill' wx:if="{{isBackground}}"> </image> </view> <view class="subscribe-container" wx:if="{{isSubscribe}}"> <button class="subscribe-btn" wx:if="{{isSubscribe}}">订阅提醒</button> </view> </view> 样式文件 page { width: 100%; height: 100%; background-color: #f2f2f2; } .liveplay-container { width: 100%; height: 100%; } live-player { width: 100%; height: 100%; } .background-container { width: 100%; height: 100%; } .background-img { width: 100%; height: 100vh; background-color: rgba(0,0,0,.2); } .subscribe-container { position: fixed; top: 100rpx; width: 100%; height: 120rpx; justify-content: center; justify-items: center; background-color: green; } .subscribe-btn { top: 15%; left: 30rpx; width: 140rpx; height: 80rpx; background-color: #f2f2f2; color: red; } js文件 onLoad: function (options) { console.log('view onLoad ...: '); console.log('view options: ', options); console.log('view roomid: ', options.roomid); console.log('view isself: ', options.isself); var isPasswd = false; if (0 != options.isself) { isPasswd = true; } console.log('view isPasswd: ', isPasswd); this.setData({ isPassword: isPasswd }); var that = this; wx.request({ url: 'https://diyapp.xun-li.com/app/lanjing_shop_api.php?i=2&r=live.get_detail', method: 'POST', data: { id: options.roomid, password: '' }, success: function (res) { console.log('room details res: ', res); if (200 === res.statusCode) { wx.showToast({ title: '打开直播间成功', content: '欢迎光临直播间', duration: 2000 }) if (0 === res.data.error) { wx.showToast({ title: '获取数据成功', content: '获取数据成功', duration: 2000 }) if (res.data != "") { console.log("room: ", res.data.roominfo); console.log("play_url: ", res.data.roominfo.play_url); that.setData({ liveurl: res.data.roominfo.play_url, backgroundImage: res.data.roominfo.backgroundimg }); } else { wx.showToast({ title: '无直播间', content: '无直播信息', duration: 2000 }) } } else{ wx.showToast({ title: '获取数据失败', content: '请联系管理员', duration: 2000 }) } } else { wx.showToast({ title: '打开直播失败', content: '网络故障,请检查网络', duration: 2000 }) } }, complete: function (res) { that.bindPlay() } }) }, bindPlay() { console.log('bindPlay....') console.log('bindPlay liveurl: ', this.data.liveurl) this.ctx = wx.createLivePlayerContext('liveplayer') this.ctx.play({ success: res => { console.log('play success') this.setData({ isPlayer: true, isBackground: false, isSubscribe: false }); }, fail: res => { console.log('play fail') } }) },
2020-04-26 - live-player打开直播前2秒黑屏问题?
我们在使用live-player组件来打开播放流进入直播时,前2秒一直黑屏,等到获取到数据后才显示直播视频信息,为了增加用户体验,如何在没有获取到播放流的视频数据等时候不显示黑屏,改为显示一张背景图片呢?
2020-04-25 - live-player调用失败如何捕获?
在.wxml文件中添加了live-player组件,其播放地址url的src属性的有效播放流地址,是在js中的onload时候通过接口从后台服务器获取,然后通过setData来更新src值内容。 但是现在目前测试发现一个直播间已经关闭或者过期时候 会报403或404如下图的类似错误,在绑定的binderror和bindstatechange的处理函数都无法铺货到此失败。 我们希望一旦失败时候,将显示直播间背景图,并提示用户相关失败原因,增加体验感。 请问在播放失败时如何获取这个失败错误?以便我们进行相关处理? [图片]
2020-04-23 - 小程序登录没有没有直播功能申请栏?
小程序登录后,左侧功能栏中 没有 “直播” 项,所以无法申请开通直播 小程序类目如下: IT科技 > 软件服务提供商 商业服务 > 公关/推广/市场调查 工具 > 预约/报名 商业服务 > 法律服务 工具 > 视频客服
2020-04-17 - 关于小程序直播插件是否可以通过接口调用来管理?
目前我们测试小程序申请开通了小程序直播插件,但是有个操作问题是,现在的创建直播间,添加商品,设置评论打开/关闭,运营资源中商品,抽奖等都需要登录微信公众平台来手动操作,这样对主播要求太高太繁琐。 所以我们想需要相关接口,以便我们做成一键式按钮,让主播支持操作我们小程序来实现,这样对于主播比较方便和便捷。 所以请提供相关通过接口调用控制小程序直播组件和方案和接口文档,谢谢
2020-04-09 - 微信小程序Appid申请注册邮箱问题
使用qq邮箱进行微信小程序appid申请的绑定邮箱,但是删除微信小程序后,不能再使用此qq邮箱注册新的微信小程序appid,提示邮箱已被占用,但是在管理后台上也找不到此邮箱绑定微信小程序的appid。 如何解决这个问题?
2018-04-07