我在我正在開發的應用程序中實現類似DownloadManager的功能。我使用AsyncTask將下載推送到後臺。
此AsyncTask位於一個名爲DownloadService
的服務中,該服務在我的一個活動中實例化。所以這意味着多次下載可以從一個活動的不同實例開始。
我想要做的是有一個特定的活動,我可以讓所有當前正在運行的下載顯示其進度,並有按鈕來暫停或恢復下載。如何檢索AsyncTask的運行實例?
回答
如果你想要這樣的東西,你可以將所有異步任務存儲在服務中的所有異步任務中,然後用http://developer.android.com/reference/android/os/AsyncTask.html#getStatus%28%29檢查它們的狀態。
希望這會有所幫助!
取而代之的是在一個Activity中使用DownloadService
,而是將它作爲類成員放入您的應用程序的Application
類中,因爲每個應用程序只會存在一個此類的實例。然後您可以通過撥打((YourApplication)getApplication()).getDownloadService()
來檢索您的活動。您將有:
- 創建一個類,擴展應用,說YourApplication
- 聲明它在清單文件中的
<application>
標籤作爲android:name="YourApplication"
- 用它在你的活動通過調用
((YourApplication)getApplication()).someMethodToGetDownloadService()
正如我所說的'DownloadService'是一個單獨的類(我沒有把它放在我的活動中,我只是在那裏實例化它)。 –
偉大的然後在你的應用程序類中實例化它。在活動中檢索並向其提交任務。然後,您應該可以進行一項進度活動,以便您可以檢索所有正在運行的任務並允許對其執行操作。 – Jeshurun
- 1. Android AsyncTask - 避免多個實例運行
- 2. 如何創建AsyncTask實例
- 3. 如何運行mongod實例
- 4. AsyncTask實例
- 5. 運行可下載的CloudFoundry實例時,如何檢索IP地址?
- 6. 如何運行多個AsyncTask?
- 7. 如何連續運行AsyncTask?
- 8. 取消所有正在運行的AsyncTask實例
- 9. 如何從以下示例實現AsyncTask?
- 10. 如何運行sphinx的多個實例?
- 11. 如何運行nutch的多個實例?
- 12. sql server檢查實例正在運行
- 13. 如何從非實例類運行實例的方法/函數?
- 14. 如何檢索實體的JHipster API上的所有實例
- 15. 如何檢查實例在heroku中運行
- 16. 如何檢查AWS EC2實例當前正常運行時間
- 17. 如何僅在運行時(即運行JUnits時)實例化redis實例
- 18. AWS Data Pipeline如何運行EC2實例?
- 19. openstack:如何運行多個glance實例?
- 20. 如何運行SQL Server Express 2008實例
- 21. Docker:如何保存運行實例?
- 22. 如何從DockerFile運行docker實例?
- 23. 如何運行多個碼頭實例
- 24. 如何停止運行Floodlight實例?
- 25. 如何計算運行EC2實例?
- 26. Android AsyncTask實例或類
- 27. 並行運行的AsyncTask
- 28. 如何實現AsyncTask?
- 29. SQL Server:2005實例正在運行,需要運行2008實例
- 30. 檢索在實例上調用的二元運算符
好,說我創建了你說的這個數組。我如何在不同於創建它的活動中訪問它?還有,我怎樣才能在不同的活動中添加它? –