簡體   English   中英

當用戶關閉應用程序時停止背景音樂,而不是在用戶更改活動時停止

[英]Stop background music when user closes the app, not when user changes activity

我正在研究如何開發android應用。 我從一個只有一個活動的非常簡單的應用程序開始。 然后我添加了播放背景音樂的服務; 當然,我使用onPause(),onStop(),onDestroy()方法來管理服務。

但是現在,我又有一個活動,當新活動打開時,背景音樂停止了(因為調用了onPause()方法)。

我只想在用戶關閉或銷毀我的整個應用程序時停止背景音樂,而不是在用戶從一個活動傳遞到另一個活動時才停止播放。

開始構建應用程序時,我可能犯了一個大錯誤。 現在,我正在嘗試解決這個問題。

我也嘗試使用bindService,但是我仍然遇到同樣的問題。

我應該如何處理這個問題?

要播放音樂(我認為更好),請使用Android Service

服務是一種應用程序組件,代表應用程序執行長時間運行的操作而不與用戶交互或提供功能供其他應用程序使用的願望。 每個服務類的包的AndroidManifest.xml中都必須具有相應的聲明。 可以使用Context.startService()和Context.bindService()啟動服務。

請注意,服務與其他應用程序對象一樣,在其托管過程的主線程中運行。 這意味着,如果您的服務要執行任何占用大量CPU資源(例如MP3播放)或阻塞(例如網絡)的操作,則它應產生自己的線程來執行此工作。 有關更多信息,請參見進程和線程。 IntentService類可作為Service的標准實現提供,該服務具有自己的線程,可以在該線程中安排要完成的工作。

從您的服務中,您可以使用此答案中找到的方法定期檢查前台活動(或程序包) 在做什么 如果它不屬於您,則可以終止該服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM