请有人可以帮助我-这让我发疯了!!!
我创建了一个 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。
任何帮助将非常感激。