1

我已经为这个问题搜索了好几天,我就是想不通,希望其他人已经解决了这个问题。

问题很简单,我主要使用 createjs、preloadjs 和 soundjs 创建了一个基于 Web 的游戏。计划是在 iOS 上的 UIWebView 和 Android 上的 WebView 中加载内容以创建这两个应用程序。

该问题出现在 Android 4.4 及更低版本上。视频或声音都没有播放。我从最简单的场景开始;我在网页上有一张图片,附加了一个预加载的声音来播放 onclick;

在里面:

createjs.Sound.registerSound("sounds/sound_must_be_on.mp3", "soundOn");
$('.btn.sound').click(soundMustBeOn);

onclick 监听器:

function soundMustBeOn() {
   createjs.Sound.setMute(false);
   createjs.Sound.setVolume(1);
   createjs.Sound.play("soundOn");
}

这适用于所有现代桌面浏览器、iOS 和 Android 5.x 及更高版本。但在 Android 4.4(在 WebView 上)它只是崩溃了。我错过了什么?我尝试过 Cordova、Phonegap、SoundJS CordovaAudioPlugin、file:// 路径、android_asset 文件夹之外的资源,以及许多其他东西。我的问题是我完全错误地使用了Phonegap,我真的可以用一个“傻瓜”的例子。

4

1 回答 1

1

解决了。

我做了我不想做的事,但我想它必须完成。我将整个 Web 应用程序封装在 Cordova/Phonegap 中,从 SoundJS 下载并添加了 CordovaAudioPlugin.js 文件,并像其他人一样简单地注册了插件(还更新了文件路径)

createjs.Sound.registerPlugins([createjs.CordovaAudioPlugin]);
createjs.Sound.registerSound("/android_asset/www/sounds/sound_must_be_on.mp3", "soundOn");
于 2015-05-17T16:56:16.660 回答