デバイスにインストールされているすべてのアプリケーションのリストを返す次のコードがあります。
PackageManager pm = this.getPackageManager();
Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> list =pm.queryIntentActivities(intent,PackageManager.PERMISSION_GRANTED);
for (ResolveInfo rInfo : list) {
results.add(rInfo.activityInfo.applicationInfo.loadLabel(pm)
.toString());
Log.w("Installed Applications", rInfo.activityInfo.applicationInfo
.loadLabel(pm).toString());
}
しかし今、私はgpsサービスを使用するアプリケーションのみをリストに入れたいと思っています。これらのアプリで取得されているアクセス許可をフィルタリングできれば解決できることを学びましたが、これを行う方法がわかりません。