🎵 播放报错音效踩坑日记:从 HTML5 的 Audio 到 UniApp 的 InnerAudioContext
Hello,大家好呀!👋 今天我来和大家分享一个让人又爱又恨的音效播放踩坑故事,讲一讲从 HTML5 的 Audio 到 UniApp 的 createInnerAudioContext 的心路历程,带你看看为什么音效在安卓基座里突然哑巴了,以及如何优雅地解决这个问题!🤯
🌟 起因:报错音效不响了
先说说场景,今天写代码的时候需要在页面上输入错误信息时播放一个提示音效,比如用户输入了无效的单号,就播放个 “滴滴滴” 的音效,提醒用户别再乱搞了。
我的初始代码是这样的,使用了 HTML5 的 Audio:
// 文件路径:common/utils/playErrorSound.js
export function playErrorSound() {
const audio = new Audio('/static/sound/error.mp3');
audio.play().catch((err) => {
console.error("播放声音失败:", err);
});
}
**在 H5 模式下运行良好,音效响得贼清脆。**🎉
结果当我跑到安卓PDA的自定义基座上测试时,它就彻底哑火了!而且,连一丁点报错都没有。🤦♂️
🧐 分析问题,Audio 为什么在安卓不行?
-
Audio是 HTML5 的特性:Audio是 HTML5 的一个接口,它运行在浏览器环境里,依赖 WebView。而安卓基


1万+

被折叠的 条评论
为什么被折叠?



