uniapp 微信发布注意事项

uniapp的微信播放不支持本地文件,起始微信原生语言是支持的 所以在编写uniapp代码时 要写两套逻辑      // #ifdef MP-WEIXIN  微信原封不变的自己写法   //#endif     // #ifndef MP-WEIXIN  其他写法  //#endif
这样可实现 发布到微信后 微信原封不动的使用自己写法  

注意uniapp的非微信端 如网页 /../../../static/audio/'+name 使用这种方式才能读取播放,就是往上倒目录位置,不倒目录不对,两种方式试剂得到的目录路径效果如下

const url = '/../../../static/audio/'+name

const url = '/static/audio/'+name

编译后得出http://localhost:5173/pages/tabBar/grid/static/audio/ui_click_12.wav编译后得出这样他播放不了

以下是uniapp代码	


	const play = (name) => {
		// #ifdef MP-WEIXIN 
			playMusicWEIXIN(name)
				console.log('微信播放',name)
		//#endif
	// #ifndef MP-WEIXIN 
		const url = '/../../../static/audio/'+name
		console.log('其他播放 ', url)
			let music =uni.createInnerAudioContext()
			music.pause();
		    music.destroy()
		    music = null
			music = uni.createInnerAudioContext();
			music.autoplay = true;
			music.src =url ;
			music.onPlay(() => {
			  console.log('开始播放');
			});
			music.onError((res) => {
				if(res){
					console.log(res.errMsg);
					console.log(res.errCode);
				}
				
			});
		//#endif
	}

	function playMusicWEIXIN(name) {
	  let music =  wx.createInnerAudioContext({
	    useWebAudioImplement: false // 是否使用 WebAudio 作为底层音频驱动,默认关闭。对于短音频、播放频繁的音频建议开启此选项,开启后将获得更优的性能表现。由于开启此选项后也会带来一定的内存增长,因此对于长音频建议关闭此选项
	  })
	  music.autoplay = false
	  music.tilte = 'boom.mp3'
	  music.src = '/static/audio/' + name
	  music.onPlay(() => {
	    console.log('开始播放:' + name)
	  })
	  music.onError((res) => {
	    console.log('播放errMsg:' + res.errMsg)
	    console.log('播放errMsg:' + res.errCode)
	  })
	  music.onEnded((res) => {
	    console.log('销毁:')
	    music.destroy()
	  })
	  music.play()
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值