Come creare un link rapido (HTML)

[ Questo articolo è rivolto agli sviluppatori per Windows 8.x e Windows Phone 8.x che realizzano app di Windows Runtime. Gli sviluppatori che usano Windows 10 possono vedere Documentazione aggiornata ]

Gli utenti vogliono che la loro capacità di condividere contenuto con parenti e amici vada oltre l'uso del computer. Le app che adottano questo concetto creano un ambiente che consente agli utenti di condividere il contenuto in modo facile e rapido. Tramite il supporto del contratto Condivisione destinazione, puoi rendere ancora più semplice l'esperienza di condivisione usando un collegamento denominato QuickLink. Un QuickLink funziona come un collegamento all'app personalizzato per uno specifico insieme di azioni utente.

Quando gli utenti condividono contenuto, in genere desiderano poter scegliere come e con chi. Un esempio comune è la condivisione tramite email. Se un utente vuole condividere un contenuto attraverso l'email, deve fornire l'indirizzo email dei destinatari della condivisione. Anche se un utente non ha problemi a specificare gli indirizzi email la prima volta, nelle successive sessioni di condivisione vorrà evitare di doverli specificare manualmente di nuovo. È decisamente un'esperienza migliore lasciare che l'app per email crei un QuickLink per applicare la volta successiva le selezioni effettuate dall'utente l'ultima volta.

Un QuickLink non archivia veramente nessun dato. Contiene invece un identificatore che, se selezionato, viene inviato all'app. Per far funzionare i link rapidi, l'app deve archiviare i dati da qualche parte (ad esempio, nel cloud o nel computer dell'utente) insieme agli ID associati. Si può fare in molti modi, uno dei quali è descritto in Gestione dei dati dell'applicazione.

Per altre informazioni sul supporto del contratto Condivisione destinazione, vedi Guida introduttiva: Ricezione di contenuto condiviso. Tale argomento descrive i passaggi eseguiti dall'app quando gli utenti la selezionano per condividere contenuto.

Cosa sapere

Tecnologie

Prerequisiti

Istruzioni

L'oggetto QuickLink fa parte della classe ShareOperation.

var quickLink = new Windows.ApplicationModel.DataTransfer.ShareTarget.QuickLink();

Dopo aver ottenuto un'istanza dell'oggetto QuickLink, devi innanzitutto configurarlo con una stringa ID destinazione che il sistema può restituire alla tua app quando l'utente seleziona il QuickLink. L'esempio seguente mostra come impostare un ID destinazione.

quickLink.id = "123456789";

Ora devi specificare un titolo per il QuickLink. Il titolo aiuta l'utente a identificare il QuickLink e il suo scopo.

quickLink.title = document.getElementById("quickLinkTitle").value;

// For quicklinks, the supported FileTypes and DataFormats are set 
// independently from the manifest.
var dataFormats = Windows.ApplicationModel.DataTransfer.StandardDataFormats;
quickLink.supportedFileTypes.replaceAll(["*"]);
quickLink.supportedDataFormats.replaceAll([dataFormats.text, dataFormats.uri, 
    dataFormats.bitmap, dataFormats.storageItems, dataFormats.html, customFormatName]);

Windows.ApplicationModel.Package.current.installedLocation.getFileAsync("images\\user.png").then(function (iconFile) {
    quickLink.thumbnail = Windows.Storage.Streams.RandomAccessStreamReference.createFromFile(iconFile);
});

Passaggio 4: Specificare i tipi di file supportati.

Ora devi specificare quali sono i tipi di file e formati di dati che il QuickLink supporta. Il sistema mostra il QuickLink solo quando il DataPackage condiviso dall'app di origine di condivisione contiene uno di questi tipi di file o formati di dati.

var dataFormats = Windows.ApplicationModel.DataTransfer.StandardDataFormats;
quickLink.supportedFileTypes.replaceAll(["*"]);
quickLink.supportedDataFormats.replaceAll([dataFormats.text, dataFormats.uri, 
    dataFormats.bitmap, dataFormats.storageItems, dataFormats.html, customFormatName]);

Ti consigliamo di usare la stessa icona che gli utenti visualizzerebbero se selezionassero la tua app senza un QuickLink. In questo modo, l'utente sa che il link è associato all'app.

Windows.ApplicationModel.Package.current.installedLocation.getFileAsync("images\\user.png").then(function (iconFile) {
    quickLink.thumbnail = Windows.Storage.Streams.RandomAccessStreamReference.createFromFile(iconFile);
});

Al termine della creazione di QuickLink, puoi inviarlo al sistema chiamando il metodo ShareOperation.reportCompleted.

shareOperation.reportCompleted(quickLink);

Esempio completo

La seguente funzione crea e restituisce QuickLink. Chiama questa funzione dopo che l'applicazione ha completato un'operazione di condivisione, invece di chiamarla direttamente ShareOperation.reportCompleted.

function reportCompleted() {
    var quickLink = new Windows.ApplicationModel.DataTransfer.ShareTarget.QuickLink();
    quickLink.id = "123456789";
    quickLink.title = document.getElementById("quickLinkTitle").value;
    
    // For quicklinks, the supported FileTypes and DataFormats are set 
    // independently from the manifest.
    var dataFormats = Windows.ApplicationModel.DataTransfer.StandardDataFormats;
    quickLink.supportedFileTypes.replaceAll(["*"]);
    quickLink.supportedDataFormats.replaceAll([dataFormats.text, dataFormats.uri, 
        dataFormats.bitmap, dataFormats.storageItems, dataFormats.html, customFormatName]);

    Windows.ApplicationModel.Package.current.installedLocation.getFileAsync("images\\user.png").then(function (iconFile) {
        quickLink.thumbnail = Windows.Storage.Streams.RandomAccessStreamReference.createFromFile(iconFile);
        shareOperation.reportCompleted(quickLink);
    });
}

Argomenti correlati

Esempio di condivisione di contenuto con un'altra app

Condivisione e scambio di dati

Guida introduttiva: Ricezione di contenuto condiviso

QuickLink

ShareOperation

Windows.ApplicationModel.DataTransfer

Windows.ApplicationModel.DataTransfer.Share

Linee guida per il debug delle app di destinazione