2012-04-26 6 views
1

phonegap/cordovaを使用して、音楽プレーヤーを含むアプリケーションを開発しようとしています。私は、アプリケーションがフォーカスを失った後、バックグラウンドで演奏を続けたいと思います。私が行った研究から、Androidプラットフォームでこれを実現する唯一の方法は、メディア操作をサービスから実行することだと思われます。AndroidのサービスとしてPhonegapアプリケーションを実行する

残念ながら、Phonegapではこれを行うためのjavascriptフックは提供されていません(これはデバイス固有の機能なので意味があります)。私はphonegap APIを活用する方法を探していますが、音楽をAndroidでバックグラウンドで再生できるようにしています。何か案は?

+2

(あなたがそうするために、PhoneGapのへの拡張が必要な​​場合があります)、あなたはPhoneGapの中で、あなたの音楽プレーヤーのUIを実装するために解決する必要がありますJavaコードでプレーヤー自体をサービスとして実装することができます。 – CommonsWare

答えて

1

バックグラウンドの再生を処理し、phonegapの下で使用されるjavascript/htmlからトリガするために、おそらくAndroidサービス(つまりJavaやndk)が必要になるでしょう。

このようなやりとりをする方法はさまざまですが、実際に実装するにはいくつかのステップが必要です。

  • あなたは、JavaScriptプログラムにそれらがアクセスできるカスタムJavaメソッドを登録することができ、これらは通常のAndroidのアクティビティ・サービスの相互作用のためのラッパーである可能性があります。

  • あなたは、セットアッププレーヤー(か何か、それのために面し)が取り扱い、文書内のハイパーリンクでそれをトリガーするためのプラットフォームに登録されているカスタムの意図URLは

  • あなたはリッスンアンドロイドサービスを持つことができます可能性があり私は推測していた場合はローカルソケットとJavaScriptからその連絡先に

+0

私は何か習慣をしなくてはならないと恐れていました。この種のものは私のPhonegapを使う利点のいくつかを切り捨てますが、おそらくそれでも価値があります。 – Shawn

+0

私はそれが悪いことになるとは思っていません。 html/javascriptがまだUIを構築する方法としてあなたにとって魅力的であるならば、javascriptとJavaとの対話のために接続する方法を学ぶために、たったの1日しかかかりません。 Androidサービスとアクティビティサービスのどちらかの方法が必要です)。おそらくこれのアンドロイドの一意性を抽象化し、UI側を移植性を保ちたい場合は、別のプラットフォームに適したものに置き換えることができます。 –

関連する問題