I could not found exact answer.But i think it will helpful
List<PackageInfo> list = packageManager.getInstalledPackages(0);
for (PackageInfo pi : list) {
try {
ApplicationInfo appInfo = getPackageManager() .getApplicationInfo(pi.packageName, 0);
//check whether the app is launchable or not
if (packageManager .getLaunchIntentForPackage(appInfo.packageName) != null) {
//check whether the app is an installed / system app
if ((appInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
//system apps.........
} else {
//installed apps............
}
}
} catch (Exception e) {}
}