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

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

когда я устанавливаю свое приложение, значок запуска должен создаваться автоматически.

Я пробовал это: но это не работает.

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />

person android question    schedule 28.10.2014    source источник
comment
comment
Чтобы получить типичную иконку на экране запуска, вам обычно не нужно делать что-либо, кроме объявления обычного фильтра намерений для действия запуска в вашем манифесте. <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter>   -  person Chris Stratton    schedule 03.11.2014


Ответы (2)


Чтобы сделать это, вам нужно сделать обратный Android, потому что домашний экран находится под контролем пользователя, но все же есть способ. Просто создайте метод createShortCut() вне метода oncreate и вызовите его внутри переопределенного метода onCreate (Bundle saveInstanceState).

private void createShortCut() {

     Intent shortcutIntent = new Intent(getApplicationContext(),MainActivity.class);
     shortcutIntent.setAction(Intent.ACTION_MAIN);
     Intent intent = new Intent();
     intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
     intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, R.string.app_name);
     intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher));
     intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
     getApplicationContext().sendBroadcast(intent);
}

Наконец, создайте логическую переменную, сохраните ее в общих настройках перед вызовом метода Выше, убедитесь, что логическая переменная имеет значение false, это просто для того, чтобы избежать нескольких ярлыков. Не забудьте добавить разрешение в свой манифест<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> Надеюсь, это поможет вам

person Suresh Maidaragi    schedule 30.01.2015

вам нужно отправить широковещательную рассылку:

//where this is a context (e.g. your current activity)
final Intent shortcutIntent = new Intent(this, SomeActivity.class);

final Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
// Sets the custom shortcut's title
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
// Set the custom shortcut icon
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(this, R.drawable.icon));
// add the shortcut
intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
sendBroadcast(intent);

Дополнительная информация здесь: Добавить ярлык для приложения Android. главный экран При нажатии кнопки

person Sandro Machado    schedule 03.11.2014