Вопрос по icons, android-launcher, android, shortcut – Как получить список всех установленных ярлыков, найденных на домашнем экране Launcher в Android
Я хотел получить список всех установленных ярлыков на панели запуска домашнего экрана программно. Я нашел много фрагментов в Интернете, но ни один из них не дает правильного вывода
для этого фрагмента:
Intent shortcutsIntent = new Intent(Intent.ACTION_CREATE_SHORTCUT);
ArrayList<Intent> intentList = new ArrayList<Intent>();
Intent intent=null;
String launchers="";
final PackageManager packageManager=getPackageManager();
for(final ResolveInfo resolveInfo:packageManager.queryIntentActivities(shortcutsIntent, 0)) {
launchers=launchers+"\n"+resolveInfo.activityInfo.packageName;
intent=packageManager
.getLaunchIntentForPackage(resolveInfo.activityInfo.packageName);
intentList.add(intent);
}
это обеспечивает только предустановленные ярлыки, такие как контакты, браузеры и т. д. не совсем то, что находится на рабочем столе.
пока этот фрагмент:
PackageManager pm = getPackageManager();
Intent i = new Intent("android.intent.action.MAIN");
i.addCategory("android.intent.category.HOME");
List<ResolveInfo> lst = pm.queryIntentActivities(i, 0);
if (lst != null) {
for (ResolveInfo resolveInfo : lst) {
}
}
}
предоставляет только панель запуска по умолчанию, которая называется com.android.launcher.
K спасибо за ваш ответ ..
Rahil2952
Эй, у тебя есть какое-нибудь решение? Я тоже застрял в аналогичной проблеме? Не могли бы вы мне помочь..
Rahil2952
Нет, я проинформировал своего клиента о том, что получить эту информацию невозможно, и они понимают.
She Smile GM
1
ответ
Мой ответ может быть поздно, но это может быть полезно для других.
Проверьте мой код:
if (Build.VERSION.SDK_INT <8)
{
url = "content://com.android.launcher.settings/favorites?Notify=true";
}
else
{
url = "content://com.android.launcher2.settings/favorites?Notify=true";
}
ContentResolver resolver = getContentResolver();
Cursor cursor = resolver.query (Uri.parse(url), null, null, null, null);
Похожие вопросы
K спасибо за ваш ответ ..
Эй, у тебя есть какое-нибудь решение? Я тоже застрял в аналогичной проблеме? Не могли бы вы мне помочь..
Нет, я проинформировал своего клиента о том, что получить эту информацию невозможно, и они понимают.