请有人帮我-这让我发疯了!!!
我创建了一个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/