2010-04-05 130 views
0

我想製作一個Android應用程序,顯示應用程序列表(從android市場下載)並啓動用戶選擇的應用程序。從我讀過,我不得不使用意圖是這樣的:從Android應用程序啓動未知活動

Intent intent = new Intent(); 
    intent.setClassName(packageName, className); 
    startActivity(intent); 

我只是希望能夠啓動應用程序,而不是他們可以有一個特定的活動。

我的問題是:如果我不知道他們的packageName或className,我怎麼能啓動這些應用程序?或者,也許,我怎麼才能知道他們的className和packageName,如果它是我沒有開發的封閉的源應用程序。

謝謝。

回答

0

使用PackageManager找出已安裝的應用程序等。事實上,你會發現this book sample project確實能滿足你的需求。

+0

非常感謝你!我不知道這個有用的類... – oscarello 2010-04-05 15:48:41

0

總之,你不能。但是,Android會讓您獲取已安裝軟件包的列表及其完全限定的類名稱。查看代碼at this link,瞭解如何獲取此軟件包列表的示例。據我所知,無法確定軟件包的安裝位置,但您可以將其與預先安裝在設備上的已知應用程序的列表進行比較,並將其過濾掉。這個想法是,如果它不是預裝的應用程序,它可能通過市場進行安裝。

+0

感謝克里斯,我會檢查鏈接:) – oscarello 2010-04-05 15:49:36

相關問題