Aggiungi link per app Android

I link per app Android sono URL HTTP che indirizzano gli utenti direttamente a pagine contenuti nella tua app per Android. I link per app Android possono indirizzare più traffico verso la tua app, ti aiutano a scoprire quali sono i contenuti dell'app più utilizzati e a semplificare l'esperienza degli utenti per trovare e condividere contenuti in un'app installata.

Per aggiungere il supporto dei link per app Android:

  1. Crea filtri per intent nel manifest.
  2. Aggiungi codice alle attività dell'app per gestire i link in arrivo.
  3. Associa la tua app e il tuo sito web a Digital Asset Links.

L'Assistente link app in Android Studio semplifica il processo con una procedura come descritto di seguito.

Per ulteriori informazioni su come funzionano i link dell'app e sui vantaggi che offrono, consulta Gestione di Link per app Android.

Aggiungi filtri per intent

L'assistente link app in Android Studio può aiutarti a creare filtri di intent nel file manifest e mappare gli URL esistenti del tuo sito web alle attività nella tua app. Link all'app L'assistente aggiunge anche codice modello in ogni attività corrispondente per gestire l'intento.

Per aggiungere filtri per intent e gestione degli URL:

  1. Seleziona Strumenti > Assistente link app.
  2. Fai clic su Apri editor di mappatura URL, quindi fai clic su Aggiungi. al in fondo all'elenco Mappatura URL per aggiungere una nuova mappatura di URL.
  3. Aggiungi i dettagli per il nuovo mapping di URL:

    L'Assistente link app ti guida nella mappatura di base degli URL

    Figura 1. Aggiungi dettagli di base sul link del tuo sito per mappare gli URL alle attività nella tua app.

    1. Inserisci l'URL del tuo sito web nel campo Host.
    2. Aggiungi un path, pathPrefix o pathPattern per gli URL da mappare.

      Ad esempio, se hai un'app di condivisione di ricette con tutte le ricette disponibili nella stessa app e le ricette del sito web corrispondente sono tutte nella stessa /ricetta utilizza pathPrefix e inserisci /recipe. In questo modo, l'URL http://www.recipe-app.com/recipe/grilled-potato-salad mappa all'attività selezionata in al passaggio successivo.

    3. Seleziona l'Attività a cui gli URL devono indirizzare gli utenti.
    4. Fai clic su OK.

    Viene visualizzata la finestra dell'editor di mappatura URL. L'assistente link app aggiunge filtri per intent in base alle tue il mapping di URL AndroidManifest.xml file ed evidenzia le modifiche nel Anteprima. Se vuoi apportare modifiche, fai clic su Apri AndroidManifest.xml per modificare il filtro per intent. Per scoprire di più, consulta l'articolo relativo all'intent filtri per i link in entrata.

    La finestra principale dello strumento Assistente link alle app mostra anche tutti i link diretti esistenti nella AndroidManifest.xml e ti consente di correggere rapidamente eventuali errori di configurazione facendo clic su Risolvi tutti i problemi relativi ai file manifest.

    L'Assistente link app consente di correggere gli errori di configurazione del manifest.

    Nota: per supportare link futuri senza aggiornare l'app, definisci una mappatura di URL che supporti gli URL che prevedi di aggiungere. Includi anche un URL per la schermata Home dell'app in modo che sia incluso nei risultati di ricerca.

  4. Per verificare che il mapping degli URL funzioni correttamente, inserisci un URL nel campo Verifica mappatura URL. .

    Se funziona correttamente, il successo mostra che l'URL inserito è relativo all'attività selezionata.

Gestire i link in arrivo

Dopo aver verificato che il mapping degli URL funzioni correttamente, aggiungi la logica per gestire l'intent creato da te:

  1. Fai clic su Seleziona attività dall'Assistente link app.
  2. Seleziona un'attività dall'elenco e fai clic su Inserisci codice.

L'Assistente link app aggiunge codice alla tua attività, come in questo caso:

Kotlin

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    ...
    // ATTENTION: This was auto-generated to handle app links.
    val appLinkIntent: Intent = intent
    val appLinkAction: String? = appLinkIntent.action
    val appLinkData: Uri? = appLinkIntent.data
    ...
}

Java

@Override
void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    // ATTENTION: This was auto-generated to handle app links.
    Intent appLinkIntent = getIntent();
    String appLinkAction = appLinkIntent.getAction();
    Uri appLinkData = appLinkIntent.getData();
    ...
}

Questo codice non è completo da solo. Ora devi eseguire un'azione basata sull'URI in appLinkData, ad esempio la visualizzazione dei contenuti corrispondenti. Ad esempio, per app di condivisione di ricette, il tuo codice potrebbe essere simile al seguente esempio:

Kotlin

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    ...
    handleIntent(intent)
}

override fun onNewIntent(intent: Intent) {
    super.onNewIntent(intent)
    handleIntent(intent)
}

private fun handleIntent(intent: Intent) {
    val appLinkAction = intent.action
    val appLinkData: Uri? = intent.data
    if (Intent.ACTION_VIEW == appLinkAction) {
        appLinkData?.lastPathSegment?.also { recipeId ->
            Uri.parse("content://com.recipe_app/recipe/")
                    .buildUpon()
                    .appendPath(recipeId)
                    .build().also { appData ->
                        showRecipe(appData)
                    }
        }
    }
}

Java

protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  ...
  handleIntent(getIntent());
}

protected void onNewIntent(Intent intent) {
  super.onNewIntent(intent);
  handleIntent(intent);
}

private void handleIntent(Intent intent) {
    String appLinkAction = intent.getAction();
    Uri appLinkData = intent.getData();
    if (Intent.ACTION_VIEW.equals(appLinkAction) && appLinkData != null){
        String recipeId = appLinkData.getLastPathSegment();
        Uri appData = Uri.parse("content://com.recipe_app/recipe/").buildUpon()
            .appendPath(recipeId).build();
        showRecipe(appData);
    }
}

Associa la tua app al tuo sito web

Dopo aver configurato il supporto degli URL per la tua app, l'assistente link app genera un asset digitali File dei link che puoi utilizzare per associare il tuo sito web a la tua app.

In alternativa al file Digital Asset Links, puoi associare il tuo sito e la tua app Search Console.

Se utilizzi App Google Play Firma per l'app, poi l'impronta digitale del certificato generata dai link dell'app. L'assistente di solito non corrisponde a quello dell'utente dispositivi mobili. In questo caso, puoi trovare lo snippet JSON Digital Asset Links corretto per la tua app nel tuo Account sviluppatore Play Console in Release > Setup > App signing.

Per associare la tua app e il tuo sito web utilizzando l'Assistente link app, fai clic su Apri Digital Asset Links File Builder dall'Assistente link app e segui queste istruzioni passaggi:

L'Assistente link app ti guida nella mappatura di base degli URL

Figura 2. Inserisci i dettagli del tuo sito e della tua app per generare un file Digital Asset Links.

  1. Inserisci il dominio del tuo sito e i tuoi Applicazione .
  2. Per includere il supporto nel file Digital Asset Links per Accesso con un tocco, seleziona Supporta la condivisione delle credenziali tra l'app e il sito web e inserisci l'URL di accesso del tuo sito.In questo modo, la stringa seguente viene aggiunta Il file Digital Asset Links in cui viene dichiarato che l'app e il sito web condividono le credenziali di accesso: delegate_permission/common.get_login_creds.

  3. Specifica la configurazione di firma oppure seleziona un file dell'archivio chiavi.

    Assicurati di selezionare la configurazione della release o il file dell'archivio chiavi corretti per la build della release o il file di debug o dell'archivio chiavi per il di debug della tua app. Se vuoi configurare la build di produzione, utilizza configurazione della release. Se vuoi testare la build, utilizza la configurazione di debug.

  4. Fai clic su Genera file Digital Asset Links.
  5. Dopo che Android Studio ha generato il file, fai clic su Salva file per scaricarlo.
  6. Carica il file assetlinks.json sul tuo sito, con accesso in lettura per tutti, all'indirizzo https://yoursite/.well-known/assetlinks.json.

    Importante: il sistema verifica il file Digital Asset Links tramite la protocollo HTTPS criptato. Assicurati che il file assetlinks.json sia accessibile tramite una connessione HTTPS, a prescindere dal fatto che il filtro per intent dell'app includa o meno https.

  7. Fai clic su Collega e verifica per confermare di aver caricato la risorsa digitale corretta. Collega il file alla posizione corretta.

L'Assistente link app può convalidare il file Digital Asset Links da pubblicare su del tuo sito web. L'assistente analizza il file per ogni dominio dichiarato nel file manifest. sul tuo sito web, esegue i controlli di convalida e fornisce una spiegazione dettagliata su come errori.

Scopri di più su come associare il tuo sito web alla tua app tramite il file Digital Asset Links in Dichiara il sito web associazioni.

Testare i link per app Android

Per verificare che i link aprano l'attività corretta, segui questi passaggi:

  1. Nell'Assistente link app, fai clic su Testa link app.
  2. Inserisci l'URL che vuoi verificare nel campo URL. ad esempio http://recipe-app.com/recipe/grilled-potato-salad.
  3. Figura 3. Finestra di dialogo Testa i link alle app che mostrano un URL in fase di test e un messaggio di operazione riuscita.

  4. Fai clic su Esegui test.

Se il mapping di URL non è configurato correttamente o non esiste, viene visualizzato un messaggio di errore sotto la sezione URL nella finestra di dialogo Testa link app. Altrimenti, Android Studio avvia l'app nel dispositivo o nell'emulatore all'attività specificata senza mostrare finestra di dialogo di disambiguazione ("selettore app") e mostra un messaggio di riuscita nella Finestra di dialogo Test del link dell'app, come mostrato nella Figura 3.

Se Android Studio non può essere avviato l'app, viene visualizzato un messaggio di errore nella finestra Esegui di Android Studio.

Per testare Link per app Android tramite l'Assistente link app, devi disporre di un dispositivo connesso o di una dispositivo virtuale disponibile con Android 6.0 (livello API 23) o versioni successive. Per ulteriori informazioni informazioni, scopri come connettere un dispositivo oppure crea una durata di visualizzazione media.