Creo que he intentado todas las soluciones que encontré en Internet, pero nadie trabajó -no se forzó el cierre, pero no aparece nada en el escritorio-. Ahora, tengo esto:Crear un acceso directo para cualquier aplicación en el escritorio
private void createShortcutOnDesktop(Application app) {
Intent shortcutIntent = new Intent();
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, app.getIntentShortcut());
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, app.getName());
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(context, R.drawable.home_button));
shortcutIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
this.sendBroadcast(shortcutIntent);
finish();
}
El app.getIntentShortcut() es la siguiente:
public Intent getIntentShortcut()
{
Intent i = new Intent();
i.setClassName(packageName, name);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
return i;
}
Y en el manifiesto:
<permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
¿Qué me falta? Gracias.
Como referencia, la edición de su pregunta es suficiente para volcar hacia arriba a la página principal de nuevo. –
puede, por favor, proporcionar el código fuente completo. – Nirav