2011-01-13 1 views

risposta

20

per creare il collegamento in sé è necessario un'attività appositamente predisposto, che deve:

  • essere definito nel tuo AndroidManifest.xml con un filtro intenti con l'android.intent.action.CREATE_SHORTCUT azione.
  • Restituisce un risultato, un intent, contenente il collegamento effettivo. La scorciatoia stessa è rappresentata da un altro Intento.

Questa attività verrà visualizzata quando si preme il desktop e si seleziona "Scorciatoie".

Ovviamente il collegamento di per sé non è molto utile, quindi è necessario aggiungere un filtro di intent a qualsiasi attività che si desidera venga attivata dal collegamento. Il filtro intent dovrebbe corrispondere a qualsiasi Intent che hai scelto per il tuo collegamento.

ho scritto un piccolo how-to su questo argomento, è ottenuto maggiori dettagli: http://www.kind-kristiansen.no/2010/android-adding-desktop-shortcut-support-to-your-app/

ditemi se qualcosa non è chiaro in quel post, cercherò di chiarire in su.

+0

Grazie mille, è utile. –

+0

Roger Grazie mille. –

+0

@rogerkk, per favore aiutami con la mia domanda. http://stackoverflow.com/questions/21371491/create-app-shortcut-inside-the-custom-launcher-in-android – androidBoomer

1

Ho sviluppato un metodo qui sotto per creare l'icona di collegamento su Android Homescreen. Basta chiamarlo.

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); 
} 

Non dimenticare di modificare il nome dell'attività, la risorsa icona. Buona programmazione !!!

+0

Anche dopo aver cambiato nome e icona, nel mio caso nessuna icona appare con il tuo metodo. –

+0

Il permesso deve essere aggiunto al manifest per installare il collegamento – kirtan403

+0

Non dimenticare di aggiungere il permesso INSTALL_SHORTCUT come questo * * –