Как создать ярлык, который приводит к активности без запуска? - PullRequest
9 голосов
/ 13 января 2011

Я хочу создать ярлык в приложении для Android, это приведет к другой активности, которая не запускается приложением.

Ответы [ 2 ]

20 голосов
/ 14 января 2011

Для создания самого ярлыка вам нужно специально созданное действие, которое должно:

  • Определитесь в вашем AndroidManifest.xml с помощью фильтра намерений с действием android.intent.action.CREATE_SHORTCUT.
  • Возврат результата, намерения, содержащего ваш фактический ярлык. Сам ярлык представлен другим намерением.

Это действие появится после того, как вы нажмете на рабочем столе и нажмете «Ярлыки».

Конечно, ярлык сам по себе не очень полезен, поэтому вы должны добавить фильтр намерений к любому действию, которое вы хотите запустить с помощью ярлыка. Фильтр намерений должен соответствовать любому назначению, выбранному вами для ярлыка.

Я написал небольшой практический совет по этому вопросу, он получил более подробную информацию: http://www.kind -kristiansen.no / 2010 / android-добавление-рабочего стола-ярлыка-поддержки-в-вашем-приложении /

Скажите мне, если что-то неясно в этом посте, я постараюсь прояснить.

1 голос
/ 12 декабря 2013

Я разработал один метод ниже для создания ярлыка на рабочем столе Android. Просто позвони.

private void ShortcutIcon(){

    Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class);
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    Intent addIntent = new Intent();
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Test");
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher));
    addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
    getApplicationContext().sendBroadcast(addIntent);
}

Не забудьте изменить название вашей деятельности, значок ресурса. Удачного кодирования !!!

...