android - 无法使用Cordova在Android Game Build上播放声音

标签 android html cordova audio soundjs

请有人帮我-这让我发疯了!!!

我创建了一个HTML5项目,该项目使用PreloadJS和SoundJS播放一些声音。它在Chrome中绝对可以正常工作,但是当我将其推送到Cordova Emulator(Android SDK)或我的Android移动设备上时,它可以成功构建和部署,但我听不见任何声音,我也不知道为什么。 Android监视器显示以下错误,但我不确定它们是否与SoundJS有关:

•I/MediaFocusControl(1258): AudioFocus requestAudioFocus() from android.media.AudioManager @ b303c1a8com.android.org.chromium.media.MediaPlayerListener@b30f0238

•E/MediaPlayer(1904): error (1, -2147483648)

我正在尝试在按钮单击事件上触发声音,因此我认为这与安全问题无关。

我正在使用以下代码预加载声音文件:
p.assetsPath = 'assets/';

p.initialize = function () {

   this.EventDispatcher_initialize();

   this.loadManifest = [
      {id:this.MENUSOUNDTRACK, src:this.assetsPath + 'MainTrack.ogg'},
      {id:this.GAMESOUNDTRACK, src:this.assetsPath + 'BackingTrack.ogg'},
 .......
}

p.preloadAssets = function () {
   createjs.Sound.initializeDefaultPlugins();
   createjs.Sound.alternateExtensions = ["mp3"];

   this.queue = new createjs.LoadQueue();
   this.queue.on('progress',this.assetsProgress,this);
   this.queue.on('complete',this.assetsLoaded,this);

   this.queue.installPlugin(createjs.Sound);        
   this.queue.loadManifest(this.loadManifest);
}

所有的声音文件都存储在/ www / assets中,我相信它们应该由cordova自动映射到/ android_asset / www / assets。

任何帮助将非常感激。

最佳答案

您可以看到有关使用PhoneGap here的一些讨论,这可能是相关的。

从理论上讲,一切都应该与Cordova一起使用,但尚未经过充分测试。

我建议您在尝试播放之前确保所有声音都已完全加载,确保您使用的是github的最新版本的soundjs,并测试github中的一个简单示例以确认其是否是SoundJS和Cordova问题或是否存在某些问题在您的实现中。

希望能有所帮助。

关于android - 无法使用Cordova在Android Game Build上播放声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24573810/

相关文章:

android - 如何确定调用手机号码的电话是本地电话还是 STD 或 ISD

javascript - HTML:当用鼠标悬停时,前景中的元素不应该阻止后面的内容吗?

html - 如何使用 bootstrap 等 css 制作响应式英雄图像

java - Blackberry - 如何使用输入/输出流将文件复制到 SD 卡?

屏幕方向改变后Android进度条不更新

android - 如何获取 Android 中 Spinner 的默认文本大小?

android - 如何在短信APP中添加字符计数器?

javascript - jQuery:如果存在错误,请删除旧的

javascript - 如何异步加载http ://debug. build.phonegap.com?

javascript - 服务函数中的 AngularJS $resource