9

私のアプリケーションでは、その特定のAndroidフォンで利用可能なすべてのランチャー(ホーム画面用)のリストを表示したいと思います。Android OSから何らかの情報を取得することは可能ですか?また、この呼び出しを行うにはどうすればよいですか?

ありがとう!

ダニエルよろしく

4

3 に答える 3

20

特定の Intent に一致する ResolverInfo のリストを照会できます。コードの次のスニペットは、インストールされているすべてのランチャーを出力します。

PackageManager pm = getPackageManager();
Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
List<ResolveInfo> lst = pm.queryIntentActivities(i, 0);
for (ResolveInfo resolveInfo : lst) {
    Log.d("Test", "New Launcher Found: " + resolveInfo.activityInfo.packageName);
}
于 2012-01-04T11:06:26.793 に答える
1

次のことを試してください。

  1. インストールされているアプリケーションのリストを取得します。

    リスト pkgList = getPackageManager().getInstalledPackages(PackageManager.GET_ACTIVITIES);

  2. このリストを繰り返し処理し、次を使用してランチャー アクティビティを取得します。

    getPackageManager().getLaunchIntentForPackage(パッケージ名);

詳細については、ここを参照してください: PackageManager。お役に立てれば。

于 2011-05-30T13:03:19.183 に答える