0

I'm studying how to develop android app. I started with a very simple app with only one activity. Then I added a service to play background music; of course i used the method onPause(), onStop() onDestroy() to manage the service.

But now, that i have another activity, the background music stops when the new activity is opened (because the method onPause() is called).

I want to stop the background music only when user closes or destroys my entire app, not when user passes from an activity to another.

Probably i made a big mistake when i started building my app. Now i 'm trying to solve this problem.

I tried to use also bindService, but i still have the same problem.

How should i menage this issue?

4

2 回答 2

0

从您的服务中,您可以使用此 answer 中找到的方法定期检查前台活动(或包)正在使用什么。如果它不属于您,您可以终止该服务。

于 2013-02-26T20:49:59.450 回答
0

要播放我认为最好使用 Android 的音乐Service

服务是一个应用程序组件,代表应用程序希望在不与用户交互的情况下执行更长时间运行的操作,或提供功能供其他应用程序使用。每个服务类必须在其包的 AndroidManifest.xml 中有相应的声明。可以使用 Context.startService() 和 Context.bindService() 启动服务。

请注意,服务与其他应用程序对象一样,在其托管进程的主线程中运行。这意味着,如果您的服务要执行任何 CPU 密集型(例如 MP3 播放)或阻塞(例如网络)操作,它应该生成自己的线程来完成这项工作。更多信息可以在进程和线程中找到。IntentService 类可作为 Service 的标准实现使用,它有自己的线程来安排要完成的工作。

于 2013-01-22T16:02:55.087 回答