Condivisione su Messenger per iOS e Android

Quando usi l'SDK di Facebook per iOS o Android nelle versioni 4.29.0 o successive, puoi consentire alle persone di condividere su Messenger link e contenuti multimediali dalle tue app. Quando un utente condivide su Messenger puoi attivare le tue estensioni della chat attraverso il link di attribuzione. Le estensioni della chat sono visualizzate nella sezione Altro dell'interfaccia di condivisione.

Per maggiori informazioni, consulta le seguenti sezioni:

Per l'implementazione della condivisione su Messenger per il web, consulta Condivisione su Messenger per il web.

Tipi di condivisione

L'SDK di Facebook fornisce i seguenti tipi di condivisione:

  • Condivisione di link (uguale alla condivisione di link esistente ma con un pageID per l'attribuzione)
  • Foto (senza attribuzione)

La seguente tabella elenca tutti i tipi di condivisione supportati nella condivisione su Messenger, insieme all'eventuale necessità di ID Pagina o app.

Tipo di condivisione ID Pagina obbligatorio? App

Condivisione di link

Facoltativo

  • Link senza attribuzione
  • Link con attribuzione

Foto

Non supportato

  • Foto
  • Foto dalla libreria

Collegamento degli ID app e Pagina

Gli sviluppatori possono specificare un ID Pagina nel flusso di condivisione e, quando gli utenti condividono contenuti su Messenger da un'app mediante l'SDK per la condivisione, il contenuto viene attribuito alla Pagina. Di contro, gli amministratori della Pagina possono evitare le false attribuzioni controllando quali app possono usare un'attribuzione di condivisione per le Pagine. Per concedere un'attribuzione di condivisione a un'app, l'amministratore collega l'ID app all'ID Pagina.

Per collegare un ID app a un ID Pagina:

  1. Accedi a Impostazioni nella Pagina.
  2. Clicca sulla sezione Piattaforma Messenger.
  3. Accedi alla sezione Collega un'app nelle Impostazioni generali.
  4. Inserisci l'ID app e clicca sul pulsante Collega.
  5. Se l'app NON è già presente nella tabella App iscritte, verrà visualizzata nella tabella con il ruolo "attribuzione di condivisione" associato. Se l'app era già presente nella tabella, verrà aggiunto il nuovo ruolo "attribuzione di condivisione" per l'app.

Gli amministratori della Pagina possono anche rimuovere l'autorizzazione dell'app all'uso dell'attribuzione di condivisione.

Per rimuovere il ruolo di "attribuzione di condivisione" per una determinata app:

  1. Nella tabella App iscritte, clicca sul menu a discesa nella colonna "Ruolo" per l'app.
  2. Clicca su "attribuzione di condivisione" per deselezionare il ruolo.
  3. Se "attribuzione di condivisione" era l'unico ruolo dell'app, la relativa riga verrà rimossa dalla tabella. In caso contrario, la riga "attribuzione di condivisione" resta ma viene deselezionata.

Registrazione di domini

Se usi un pulsante con URL nell'SDK per la condivisione e desideri abilitare l'estensione di Messenger quando l'URL viene aperto su Messenger, devi registrare il dominio dell'URL in modo che la condivisione funzioni correttamente.

Per registrare un dominio:

  1. Visualizza la Pagina.
  2. Vai a Impostazioni > Messaggistica avanzata.
  3. Aggiungi il dominio al campo Domini aggiunti alla whitelist.

Per maggiori informazioni, consulta SDK per le estensioni di Messenger: autorizzazione del dominio richiesta.

iOS

Prerequisiti

Prima di aggiungere la condivisione su Messenger alla tua app, completa la procedura seguente:

Per maggiori informazioni, consulta Primi passi con l'SDK di Facebook per iOS.

Inoltre, assicurati che la tua app effettui una chiamata a canShow o validate sull'istanza MessageDialog per stabilire se gli utenti hanno installato una versione compatibile di Messenger sui loro dispositivi.

Limitazioni

La proprietà quote non è supportata.

Esempio di condivisione di link

guard let url = URL(string: "https://newsroom.fb.com/") else {
    preconditionFailure("URL is invalid")
}

let content = ShareLinkContent()
content.contentURL = url

let dialog = MessageDialog(content: content, delegate: self)

do {
    try dialog.validate()
} catch {
    print(error)
}

dialog.show()

Esempio di condivisione di foto

// Assumes your assets contain an image named "puppy"
guard let image = UIImage(named: "puppy") else {
    return
}

let photo = SharePhoto(image: image, userGenerated: true)
let content = SharePhotoContent()
        content.photos = [photo]

let dialog = MessageDialog(content: content, delegate: self)

// Recommended to validate before trying to display the dialog
do {
    try dialog.validate()
} catch {
    print(error)
}

dialog.show()

Esempio di condivisione di video

// Assuming you have a URL for a PHAsset
let video = ShareVideo(videoURL: assetURL)
let content = ShareVideoContent()
content.video = video

let dialog = MessageDialog(content: content, delegate: self)

// Recommended to validate before trying to display the dialog
do {
    try dialog.validate()
} catch {
    print(error)
}

dialog.show()

Android

Prerequisiti

Attieniti alle istruzioni di Condivisione su Android riepilogate qui sotto:

Inoltre, assicurati che la tua app effettui una chiamata a MessageDialog.canshow({template}) per stabilire se gli utenti hanno installato una versione compatibile di Messenger sui loro dispositivi.