其實,我發現了很多答案,但這次我完全陷入困境。在後臺工作
我的問題很簡單。我正在爲.pls流構建一個廣播流應用程序,當用戶按下主頁按鈕時,我希望我的應用程序繼續工作。我想很多人都知道ebuddy和Skype或基本的媒體播放器。他們正在把自己放到通知欄,你可以很容易地從這個地方到達他們。我試圖爲我的應用創建通知,但是當我點擊通知欄上的圖標時,我無法訪問我的應用。它直接打開我的應用程序的新版本,我無法控制流媒體,最初的工作應用程序不再存在。
其實,我發現了很多答案,但這次我完全陷入困境。在後臺工作
我的問題很簡單。我正在爲.pls流構建一個廣播流應用程序,當用戶按下主頁按鈕時,我希望我的應用程序繼續工作。我想很多人都知道ebuddy和Skype或基本的媒體播放器。他們正在把自己放到通知欄,你可以很容易地從這個地方到達他們。我試圖爲我的應用創建通知,但是當我點擊通知欄上的圖標時,我無法訪問我的應用。它直接打開我的應用程序的新版本,我無法控制流媒體,最初的工作應用程序不再存在。
您可能需要閱讀的描述爲LaunchMode:http://developer.android.com/guide/topics/manifest/activity-element.html#lmode
要啓動你的活動作爲singleInstance
編輯:也許singleTask會更好。
這是你想要達到的工作流程: workflow http://i55.tinypic.com/xm0llx.png
所有後臺工作必須由服務來完成。實現一個很簡單,就像創建一個活動一樣。
有關於如何做到這一點的例子很多:
您需要的實際音樂播放部分 - 或應該繼續在後臺運行的部分 - 成爲一項服務,並將gui作爲一項活動。您所做的通知應該將您的活動gui帶到flag_activity_reorder_to_front的前面。
我認爲這是我的問題的正確答案,但我不知道如何使用服務,實際上我嘗試了一些關於它們的內容,但是我沒有獲得有關我的應用程序的任何信息。我會嘗試瞭解服務和應用程序之間的連接。 – Ada 2011-05-11 02:22:06
是的,一開始這看起來像解決方案,但是當我添加這個時,我的應用程序應該關閉(從未開始)將URL應用到應用程序。這是唯一的方法。如果我先打開它,然後嘗試打開.pls文件,則應用程序不會執行任何操作。正因爲如此,我認爲我必須瞭解服務或我必須禁用HOME按鈕並強制用戶使用EXIT,但我不想要這樣。 – Ada 2011-05-11 02:19:07
@Ada這不是爲了避免服務。我認爲您的音樂已經通過服務進行了流式傳輸,並且您想要顯示該應用來控制流。所有後臺工作必須由服務完成。實現一個很簡單,就像創建一個活動一樣。有一個關於如何在這裏執行的例子:http://developer.android.com/reference/android/app/Service.html。另一個例子:http://marakana.com/forums/android/examples/60.html – Aleadam 2011-05-11 02:34:13
其實,我把我的媒體流媒體播放器稱爲線程,但我知道這是完全錯誤的方式。如果我理解正確的情況,我必須將我的流媒體播放器類修改爲服務。我對嗎? – Ada 2011-05-11 04:07:23