3

在我的應用程序中,我需要知道是否正在從android市場下載某個特定的應用程序。我如何實現此功能?是否有可能獲得正在進行的所有下載列表?Android市場是否廣播可以被捕獲的任何意圖?如何獲取正在下載的應用程序列表?

注意:由於我的目標應用程序在Android 3.0及更高版本的設備上,因此使用DownloadManager類(從2.3開始)沒有任何問題。

+0

此[link] [1]可能會幫助完整。 [1]:http://stackoverflow.com/questions/2695746/how-to-get-a-list-of-installed-android-applications-and-pick-one-to-運行 –

+0

其實,我正在尋找下載的應用程序列表,目前不是已安裝的應用程序列表。 –

回答

1

我發現了一個API,可以完成你想要的功能,但是你需要有一個9或更高的API來使用它。您可以使用此獲得已請求下載一個下載管理的所有下載:

DownloadManager manager = (DownloadManager)getSystemService(Context.DOWNLOAD_SERVICE); 
DownloadManager.Query query = new DownloadManager.Query(); 
Cursor c = manager.query(query); 

你可以在此here更多信息。我不認爲有任何其他方法可以在較低的API級別爲您提供這些信息。

+0

請注意,使用下載管理器的市場純粹是一個實現細節。你絕對不應該假設你所看到的與市場可能會有什麼關係。 – hackbod

0

我不認爲有任何Android市場應用程序的意圖,你可以捕捉(但我不是100%確定,因爲我找不到Android市場應用程序體現無處)。

正如我所看到的,通過DownloadManager.query(DownloadManager.Query q)類,您應該能夠找到所有正在進行的下載,並根據數據的來源排除所有不從市場下載的數據。

相關問題