インストールされているAndroidアプリケーションのリストを取得し、実行するアプリケーションを選択する方法 質問する

インストールされているAndroidアプリケーションのリストを取得し、実行するアプリケーションを選択する方法 質問する

今週初めにこれと似たような質問をしましたが、インストールされているすべてのアプリケーションのリストを取得し、その中から実行するアプリケーションを選択する方法がまだわかりません。

私はもう試した:

Intent intent = new Intent(ACTION_MAIN);
intent.addCategory(CATEGORY_LAUNCHER);

これには、プリインストールされているアプリケーション、または Intent タイプを実行できるアプリケーションのみが表示されますACTION_MAIN

PackageManagerインストールされているすべてのアプリケーションを取得するために使用できることも知っていますが、これを使用して特定のアプリケーションを実行するにはどうすればよいでしょうか?

ベストアンサー1

よりクリーンな方法は、PackageManager

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

for (ApplicationInfo packageInfo : packages) {
    Log.d(TAG, "Installed package :" + packageInfo.packageName);
    Log.d(TAG, "Source dir : " + packageInfo.sourceDir);
    Log.d(TAG, "Launch Activity :" + pm.getLaunchIntentForPackage(packageInfo.packageName)); 
}
// the getLaunchIntentForPackage returns an intent that you can use with startActivity() 

詳細はこちらhttp://qtcstation.com/2011/02/how-to-launch-another-app-from-your-app/

おすすめ記事