2011-08-01 70 views
1

我有一项活动和一项服务。当我按主页按钮时,活动暂停并且服务启动。我想,当我再次开始我的应用程序停止服务和我的活动开始....谢谢。Android:从服务恢复到活动

+0

有没有你不能有你的服务的运行也WH一个理由你的活动是在前台? – Marmoy

+0

这是错误的路要走。请参阅下面的答案。 – Marmoy

回答

0

更改您的设计。

无需在活动和服务中播放音乐之间切换。相反,您应该继续在服务中播放,并使用例如BroadcastReceivers不断更新活动。

这些广播接收器应在活动的OnResume中注册,并在活动的OnPause中注销。

Using a Service with MediaPlayer从官方Android文档

+0

是的,但如何服务将通知我的活动(当我的应用程序在前台),以便,例如更新我的滑块。你可以给我一个例子吗? – Tim

+0

使用broadcastreceiver将服务中的广播消息用于活动。以下是一个示例:http://www.websmithing.com/2011/02/01/how-to-update-the-ui-in-an-android-activity-using-data-from-a-background-service/ – Marmoy

+0

好吧,它适用于我,现在我在我的活动(播放暂停)中有一个按钮,我如何在我的服务中发送信息以便开始暂停我的播放器?谢谢.. – Tim

0

停止OnResume()中的服务。在OnPause()中启动服务。

+0

如何在OnResume()中停止服务? – Tim

+0

stopService(new Intent(getApplicationContext(),YourServerice.class)); – DeeV

+0

谢谢,但我想从我的服务中首先采取一些信息,然后停止它... – Tim

0

如果你不想/不能改变你的应用程序的设计,您必须在服务中使用此标志与您的意图:

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

如果你不想让你的活动的新实例,在AndroidManifest文件中设置launchMode为您的活动:

android:launchMode="singleTask"