2016-09-18 9 views
0

アクティビティ/フラグメントからサービスで作成されたMediaPlayerにアクセスするにはどうすればよいですか?

public static MediaPlayer mp = new MediaPlayer(); 

どのように私は活動またはフラグメントからこのインスタンスにアクセスすることができるだろう...私は私のサービスクラスのMediaPlayerを作成したと仮定しますか?

MediaPlayerアクティビティで作成された場合たとえば、私はこのようなフラグメントでインスタンスにアクセスすることができるだろう...

MainActivity

のイニシャライズのMediaPlayer ....

public static MediaPlayer mp = new MediaPlayer(); 

断片

フラグメントからのアクセスMediaPlayerの...

private MediaPlayer mp = ((MainActivity)getActivity()).mp; 

質問:上記のように iが同じように、FragmentからServiceクラスで作成されたMediaPlayerのインスタンスにアクセスすることはできますか?

+0

public static MediaPlayerインスタンスを宣言しているため、MainActivityというクラス名で直接アクセスできます。 –

+0

サービスでMediaPlayerを作成した場合、MediaPlayerにどのようにアクセスしますか? – user20338

+0

public static MediaPlayer mp = new MediaPlayer()のように宣言しています。これで、ServiceClassName.mpにアクセスできます。サービスを開始したときに、activity内のmediaPlayerを宣言することができます。それはサービスより良いです。 –

答えて

0

バウンドサービスのドキュメントを確認する必要があります。特定のアクティビティ/フラグメントにサービスをバインドできるこのクラスのアイデア。 UIとサービスとの間の相互作用は、例えばMessengerクラスを使用することはできません。

関連する問題