Спасибо за ваш ответ. Вопрос связан с поиском правильного названия приложения. Если я хочу сказать, запустить IMO на всех платформах, как это сделать. Ведь на 2 андроид телефонах которые я смотрел они называются по разному! Это верно для большинства приложений. Я пытался калькулятор. То же самое. Они не одинаковы на разных платформах. Я приведу пример калькулятора здесь:
Intent launchIntent =
getPackageManager().getLaunchIntentForPackage("com.doro.apps.calculator");
if (launchIntent != null) {
try {
// startActivity(launchIntent);
startActivity(launchIntent);
} // in case Instagram not installed in your device
catch (ActivityNotFoundException ex) {
ex.printStackTrace();
}
} else {
Log.i("openCalCulator", "Intent is null");
}
}
Вы видите, что это слишком конкретно: com.doro.apps.calculator
Если простой калькулятор вызывается с разными именами, я могу только представить, что другие приложения также будут иметь разные имена.
I tried using getPackageManager but youtube got started instead of calculator!
items = new ArrayList<HashMap<String,Object>>();
pm = getPackageManager();
packs = pm.getInstalledPackages(0);
for (PackageInfo pi : packs)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("appName", pi.applicationInfo.loadLabel(pm));
map.put("packageName", pi.packageName);
items.add(map);
}