質問があります。Sound JS と WebAudio プラグインを使用している場合createInstance
、同じオーディオ ファイルを 2 回目に使用するたびに、2 回目のリクエストは行われません。そのcreateInstance
ため、最初に呼び出されたときにそのサウンドファイルのhttpリクエストを作成しますが、同じsrcを使用して再度呼び出すたびにcreateInstance
、オーディオファイルがキャッシュから取得され、無駄なリクエストは行われません.
これは素晴らしい。ただし、Cordova プラグインを使用すると、createInstance
常にオーディオ ファイルを要求するようです。キャッシュされることはありません。これは、サウンドが再生されるたびに、オーディオが聞こえるまでに一定の遅延があるためです。同じことが WebAudio でも起こりますが、最初の再生でのみ、その後は即座に再生されます。
これは、ドキュメントにhttp://docs.phonegap.com/en/edge/cordova_media_media.md.htmlcreateInstance
と記載されているように、Cordova プラグインで を呼び出すと、_playbackResource
常に として作成されるためだと思います。では、Cordova Media プラグインには内部キャッシュ メカニズムが組み込まれていないのではないでしょうか? したがって、 を呼び出すたびに、src は既に読み込まれていますが、Android はそのたびにサーバーに新しいリクエストを作成します。new Media()
new Media(src)
これらは有効なポイントですか?もしそうなら、解決策は何でしょうか?Cordova プラグインを使用する場合、すべてのインスタンスのプールを保持する必要がありますか?
ありがとう。