2013-04-18 59 views
0

我是Android開發新手。我試圖建立一個應用程序掃描所有安裝的應用程序隱式打算調用。所以如果一個應用程序有隱式調用,那麼這個應用程序顯示應用程序的名稱。有人能提供一些關於如何做的概念嗎?如果這不可能,那麼是否有可能通知隱式調用應用程序?隱式意圖調用掃描

回答

1

您可以通過查詢PackageManager獲取所有安裝的應用程序的列表,並獲取每個軟件包的啓動意向。 (這是分類的軟件包Intent.CATEGORY_LAUNCHER

final PackageManager pm = getPackageManager(); 
//get the list of all installed packages. 
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA); 

for (ApplicationInfo packageInfo : packages) { 
    Log.d(TAG, "Installed package :" + packageInfo.packageName); 
    Log.d(TAG, "Launcher Activity :" + pm.getLaunchIntentForPackage(packageInfo.packageName)); 
} 
+0

我仍然無法弄清楚如何確定的意圖是否是隱式或沒有。我試圖用resolveActivity(見上面的代碼片段) – Shai 2013-04-18 22:27:03

+0

這是找到的唯一途徑已安裝的應用程序及其「啓動意向」。 – 2013-04-23 04:18:21