martes, 25 de junio de 2013

Crear acceso directo al instalar aplicación Android

Bueno días!  
Hoy vamos a ver como crear de manera automática un acceso directo de nuestra aplicación en el escritorio del terminal.

No se puede considerar un tutorial ya que es una función muy simple que funcionará en cualquier caso con solo copiar y pegar y retocar el nombre de la clase.

Primero de todo necesitaremos añadir un permiso al manifest.xml para que el terminal nos permita crear el acceso directo. El permiso es el siguiente:




<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
Ese permiso hay que añadirlo entre el
<manifest
y el
<application
Una vez lo tengamos colocado vamos a ver el código totalmente comentado:
private void addShortcut() {
     //Creamos el Intent y apuntamos a nuestra classe principal
  //al hacer click al acceso directo
  //En este caso de ejemplo se llama "Principal"
     Intent shortcutIntent = new Intent(getApplicationContext(), Principal.class);
     //Añadimos accion
     shortcutIntent.setAction(Intent.ACTION_MAIN);
     //Recogemos el texto des de nuestros Values
     CharSequence contentTitle = getString(R.string.app_name);
     //Creamos intent para crear acceso directo
     Intent addIntent = new Intent();
     //Añadimos los Extras necesarios como nombre del icono y icono
     addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
     addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, contentTitle.toString());
     addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
     Intent.ShortcutIconResource.fromContext(getApplicationContext(),R.drawable.ic_launcher));
     //IMPORTATE: si el icono ya esta creado que no cree otro
     addIntent.putExtra("duplicate", false); 
     //Llamamos a la acción
     addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
     //Enviamos petición
     getApplicationContext().sendBroadcast(addIntent);
 } 


Esto es todo, no os olvidéis de comentar y si os a servido en alguna ocasión puntuar lo con +1 !
Muchas gracias por sus  visitas!!

7 comentarios:

  1. Se necestita una galeria para poder utilizar este sistema o solo como lo muestra el ejemplo estaria funcionando?

    ResponderEliminar
    Respuestas
    1. Con el código del tutorial y el permiso de arriba ya estaría funcionando. +1 :D

      Eliminar
    2. perfecto gracias por explicarme

      Eliminar
  2. Pero y si quisiera que se crear al instalar la aplicacion... donde colocaria el metodo??...
    Para que al momento de instalarse la APP se cree el acceso directo solo una vez...
    no cada vez que ingrese a la app..
    se me crearian varios accesos directos..

    ResponderEliminar
    Respuestas
    1. Creo que ahi mismo dice que sea crea una vez y checa que no se duplique.

      Eliminar
  3. Ayuda, también me pasa lo mismo donde debe de ir para que no repita el intento de poner el shortcut y solo sea en la instalación???, por que cada vez que la ejecuto me sale un mensaje de que ya ha sido creado el shortcut.

    ResponderEliminar
  4. Gracias por el tuto!!
    ...
    pero porque al ejecutar en el emulador no duplica el shortcut pero al ejecutar la app en el movil me sigue creando shortcut??

    ResponderEliminar