I want list of all applications installed on the device which use a specific permission like INTERNET.
i am using this code , but not able to retrieve results , plea
I tried the code on android 2.2 emulator and it was working fine. Following is the working code:
private ArrayList getInstalledApps(Context context) {
ArrayList results = new ArrayList();
PackageManager packageManager = context.getPackageManager();
List applist = packageManager.getInstalledPackages(0);
Iterator it = applist.iterator();
while (it.hasNext()) {
PackageInfo pk = (PackageInfo) it.next();
if ((pk.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
Log.v("system app using internet = ", ""+pk.applicationInfo.loadLabel(packageManager));
continue;
}
if (PackageManager.PERMISSION_GRANTED == packageManager
.checkPermission(Manifest.permission.INTERNET,
pk.packageName))
results.add("" + pk.applicationInfo.loadLabel(packageManager));
}
Log.v("app using internet = ", results.toString());
return results;
}