私は次の状況を抱えています。私は音楽アプリを開発します。それにはメディアサービスが含まれています。 また、このアプリケーションにはMainActivityと4個のFragmentsが含まれています。各フラグメントの一番下には、再生、次のスキップ、前のスキップ、シャッフル、リピートのバーがあります。メディアサービスをアクティビティから制御する方法は?
下部のバーはMainActivityを指します。 また、アルバムタブとプレイリストタブには、タップできるアルバムとプレイリストのリストがあり、録画したアルバム/プレイリストの曲を使って別のアクティビティに移動します。私は1つだけのサービスしか持っていないので、すべてのサービスにバインドします(1つのフラグメント、2つのアクティビティ、実際にはリークがありますが別の問題です)。
質問はどうすればメディアの再生を制御できますか/一時停止、シャッフル、リピート)します。
は、私はすでにボタンにOnClickListener
を設定し、サービスメソッドを呼び出ししようとしましたが、その場合には私のようなエラーがあります。念のために private MediaPlayerService mediaPlayerService = new MediaPlayerService()
(もちろん最後 private MediaPlayerService mediaPlayerService = MediaPlayerService.getInstance()
と:私は両方を試してみました java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.media.MediaPlayer.isPlaying()' on a null object reference
を1つは動作しません)
私はmediaPlayer
シングルトンを作ろうとしましたが、それは動作しますが、skipNext/Previouseの別の問題があります - idsのint songPositionと(ArrayList)もシングルトンでなければなりません)、良い、私しかし、別の問題prepareAsync
州1のエラーで呼ばれた... W @ T @ F @ ...申し訳ありません、それは私の最初のプロジェクトであり、おそらく私は単純なものを非常に複雑な開発bycicleにしました。どんな助けも素晴らしいでしょう。 ありがとうございます。
ところで、私はmessangerクラスを使用すると思っていましたが、まだ試していません。 –