Невозможно воспроизводить звуки в Android Game Build с помощью Cordova

Пожалуйста, кто-нибудь может мне помочь - это сводит меня с ума!!!

Я создал проект 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, которые, как я считаю, должны автоматически сопоставляться с /android_asset/www/assets с помощью cordova.

Любая помощь могла бы быть полезна.

1 ответ

Решение

Здесь вы можете увидеть некоторые обсуждения использования PhoneGap, которые, вероятно, будут актуальны.

Теоретически все должно работать с Cordova, но это не очень хорошо проверено.

Я бы посоветовал убедиться, что все звуки полностью загружены, прежде чем пытаться воспроизвести, убедиться, что вы используете последнюю версию soundjs от github, и протестировать один из простых примеров из github, чтобы убедиться, что это проблема SoundJS и Cordova или есть что-то в вашей реализации.

Надеюсь, это поможет.

Другие вопросы по тегам