Aggiungi arricchimenti

Gli arricchimenti consentono alla tua applicazione di controllare la struttura e la presentazione delle foto all'interno di un album in Google Foto. Ti consentono di presentare all'utente un contesto aggiuntivo tramite annotazioni di testo o posizione e ordinare/raggruppare le immagini che raccontano una storia insieme.

Ambito dell'autorizzazione richiesto

L'aggiunta di arricchimenti agli album creati dall'app richiede l'ambito photoslibrary.appendonly. Per ulteriori informazioni sugli ambiti, consulta Ambiti di autorizzazione.

Tipi di arricchimento

Google Foto supporta tre tipi di arricchimento negli album: testo, località e mappe.

Arricchimenti di testo

Un arricchimento del testo è una stringa di testo normale che può essere inserita per annotare l'album.

Screenshot di un arricchimento del testo mostrato in
Google Foto

Arricchimenti dei dati sulla posizione

Un arricchimento della posizione è un indicatore e il nome del luogo che può essere inserito per annotare una posizione.

Screenshot di un potenziamento della posizione
mostrato in Google Foto

Arricchimenti delle mappe

Un arricchimento della mappa è una mappa con una partenza e una destinazione specificate che può essere inserita nell'album.

Screenshot di un arricchimento della mappa mostrato in Google Foto

Posizioni

Per inserire elementi multimediali e arricchimenti dell'album, specifica la posizione dell'album. Una posizione è facoltativa per gli elementi multimediali, ma deve essere specificata per l'arricchimento degli album.

Una posizione può essere specificata solo durante la creazione di un elemento multimediale o l'aggiunta di arricchimenti. Gli elementi multimediali esistenti in un album non possono essere riorganizzati, quindi è importante impostare la posizione di un elemento al momento dell'aggiunta.

Inizio dell'album

Un elemento multimediale/di arricchimento può essere aggiunto all'inizio dell'album come posizionamento assoluto.

Fine dell'album

Un elemento multimediale/di arricchimento può essere aggiunto alla fine dell'album come posizionamento assoluto.

Rispetto all'elemento multimediale

Un elemento multimediale/arricchimento può essere aggiunto rispetto a un elemento multimediale che inizia dopo la sua posizione nell'album.

Rispetto all'elemento di potenziamento

È possibile aggiungere un elemento multimediale/di arricchimento rispetto a un elemento di arricchimento che inizia dopo la sua posizione nell'album.

Aggiunta di arricchimenti all'album

Gli arricchimenti vengono aggiunti uno alla volta e devono essere aggiunti a una posizione in un album. Per aggiungere arricchimenti a un album, chiama albums.addEnrichment.

Se la richiesta ha esito positivo, restituisce il valore id dell'elemento di potenziamento, che può essere utilizzato per posizionare elementi multimediali o altri arricchimenti.

REST

Ecco una richiesta POST:

POST https://photoslibrary.googleapis.com/v1/albums/album-id:addEnrichment
Content-type: application/json
Authorization: Bearer oauth2-token
request-body

Il corpo della richiesta è costituito dall'elemento di arricchimento e dalla relativa posizione:

{
  "newEnrichmentItem": {
    enrichment-to-be-added
  },
  "albumPosition": {
    position-of-enrichment
}

Ecco un esempio di risposta:

{
  "enrichmentItem": {
    "id": "enrichment-item-id",
  }
}

Arricchimenti supportati

Arricchimenti di testo

Gli arricchimenti di testo contengono una singola stringa di testo (non più di 1000 caratteri), come mostrato nell'esempio seguente:

REST

{
  "text": "Text to be shown"
}

Java

// Use the NewEnrichmentItemFactory helper to create a text enrichment item
NewEnrichmentItem newEnrichmentItem =
    NewEnrichmentItemFactory.createTextEnrichment("text to be shown");

PHP

$newEnrichmentItem = PhotosLibraryResourceFactory::newEnrichmentItemWithText("text to be shown");

Arricchimenti dei dati sulla posizione

Gli arricchimenti della località consistono in un nome di località arbitrario e nella posizione di latitudine e longitudine. locationName è limitato a 500 caratteri.

REST

{
  "location": {
    "locationName": "Australia",
    "latlng": {
      "latitude": "-21.197",
      "longitude": "95.821"
    }
  }
}

Java

// Use the NewEnrichmentItemFactory helper to create a location enrichment
// with the name, latitude, and longitude of the location
NewEnrichmentItem newEnrichmentItem =
    NewEnrichmentItemFactory.createLocationEnrichment("Australia", -21.197, 95.821);

PHP

// Create a new location object and set the name, latitude, and longitude of the location
$newLocation = new Location();
$newLocation->setLocationName("Australia");
$newLocation->setLatlng((new LatLng())->setLatitude(-21.197)->setLongitude(95.821));

$newEnrichmentItem = PhotosLibraryResourceFactory::newEnrichmentItemWithLocation($newLocation);

Arricchimenti delle mappe

Gli arricchimenti della mappa mostrano due località, ciascuna composta da un nome, la latitudine e la longitudine. Come per l'arricchimento dei dati sulla posizione, locationName all'interno di destination e di destination è limitato a 500 caratteri.

REST

{
  "origin": {
    "locationName": "Australia",
    "latlng": {
      "latitude": "-21.197",
      "longitude": "95.821"
    }
  },
  "destination": {
    "locationName": "San Francisco",
    "latlng": {
      "latitude": "37.757",
      "longitude": "122.507"
    }
  }
}

Java

// Use the NewEnrichmentItemFactory helper to create a map enrichment item for
// an origin and a destination location
NewEnrichmentItem newEnrichmentItem = NewEnrichmentItemFactory.createMapEnrichment(
    "Australia", -21.197, 95.821, // origin
    "San Francisco", 37.757, 122.507 // destination
);

PHP

// Create two new location objects to create a map enrichment item
// for an origin and a destination location
$locationAustralia = new Location();
$locationAustralia->setLocationName("Australia");
$locationAustralia->setLatlng((new LatLng())->setLatitude(-21.197)->setLongitude(95.821));

$locationSanFrancisco = new Location();
$locationSanFrancisco->setLocationName("San Francisco");
$locationSanFrancisco->setLatlng((new LatLng())->setLatitude(37.757)->setLongitude(122.507));

$newEnrichmentItem =
  PhotosLibraryResourceFactory::newEnrichmentItemWithMap($locationAustralia, $locationSanFrancisco);

Posizionamento supportato

Inizio dell'album

La posizione FIRST_IN_ALBUM fa riferimento all'inizio dell'album. Gli elementi che si trovano qui vengono mostrati prima all'utente:

REST

{
  "position": "FIRST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createFirstInAlbum();

PHP

$albumPosition = new AlbumPosition();
$albumPosition->setPosition(PositionType::FIRST_IN_ALBUM);

Fine dell'album

La posizione LAST_IN_ALBUM si riferisce alla fine dell'album. Gli elementi che si trovano qui vengono mostrati all'utente per ultimi.

REST

{
  "position": "LAST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createLastInAlbum();

PHP

$albumPosition = new AlbumPosition();
$albumPosition->setPosition(PositionType::LAST_IN_ALBUM);

Rispetto all'elemento multimediale

La specifica della posizione relativeMediaItem si riferisce a una posizione relativa a un elemento multimediale. Gli elementi vengono aggiunti dopo l'elemento multimediale specificato.

REST

{
  "position": "after-media-item",
  "relativeMediaItemId": "media-item-id"
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterMediaItem(mediaItemId);

PHP

$albumPosition = PhotosLibraryResourceFactory::albumPositionAfterMediaItem($mediaItemId);

Rispetto all'elemento di arricchimento

La specifica di un relativeEnrichmentItemId fa riferimento a una posizione relativa a un elemento di arricchimento. Gli elementi vengono aggiunti dopo l'elemento di arricchimento specificato.

REST

{
  "position": "after-enrichment-item",
  "relativeEnrichmentItemId": "enrichment-item-id"
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterEnrichmentItem(enrichmentItemId);

PHP

$albumPosition = PhotosLibraryResourceFactory::albumPositionAfterEnrichmentItem($enrichmentItemId);

Modificare gli arricchimenti

Al momento non è possibile modificare gli arricchimenti. Tuttavia, una volta creato un arricchimento e aggiunto a un album, l'utente può modificarlo tramite l'app Google Foto.