1

この問題について数日間高低を検索しましたが、理解できません。他の誰かがこれを解決したことを願っています。

問題は単純です。主に createjs、preloadjs、soundjs を使用して Web ベースのゲームを作成しました。計画では、iOS の UIWebView と Android の WebView 内にコンテンツをロードして、2 つのアプリを作成することでした。

この問題は、Android 4.4 以下で発生します。動画も音声も再生されません。最も単純なシナリオから始めます。Web ページに画像があり、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 に答える