此示例使用需要Internet权限的应用程序的所有包名称填充packageNames:
ArrayList packageNames = new ArrayList();
PackageManager p = getPackageManager();
final List apps = p.getInstalledPackages(PackageManager.GET_PERMISSIONS);
for (PackageInfo packageInfo : apps) {
if (packageInfo.requestedPermissions == null)
continue;
for (String permission : packageInfo.requestedPermissions) {
if (TextUtils.equals(permission, android.Manifest.permission.INTERNET)) {
packageNames.add(packageInfo.packageName);
break;
}
}
}