Dodaj wzbogacenia

Wzbogacenia umożliwiają aplikacji kontrolowanie struktury i prezentacji zdjęć w albumie w Zdjęciach Google. Pozwalają one przedstawić użytkownikowi dodatkowy kontekst za pomocą adnotacji tekstowych lub lokalizacji oraz uporządkowania i grupowania obrazów, które razem opowiadają pewną historię.

Wymagany zakres autoryzacji

Dodawanie rozszerzeń do albumów utworzonych przez aplikację wymaga photoslibrary.appendonly zakresu. Więcej informacji o zakresach znajdziesz w artykule na temat zakresów autoryzacji.

Typy wzbogacania

Zdjęcia Google obsługuje 3 typy wzbogacania albumów: tekst, lokalizacje i mapy.

Wzbogacenia tekstu

Wzbogacenie tekstu to zwykły ciąg tekstowy, który można wstawić, aby dodać adnotację do albumu.

Zrzut ekranu przedstawiający wzbogacenie tekstu wyświetlane w Zdjęciach Google

wzbogacanie danych o lokalizacji,

Wzbogacenie lokalizacji to znacznik i nazwa miejsca, które można wstawić, aby dodać adnotację do lokalizacji.

Zrzut ekranu pokazujący wzbogacenie lokalizacji w Zdjęciach Google

wzbogacanie map;

Wzbogacenie mapy to mapa ze wskazanym miejscem wyjazdu i miejscem docelowym, którą można wstawić do albumu.

Zrzut ekranu pokazujący wzbogacenie mapy w Google Photos

Pozycje

Aby wstawić elementy multimedialne i elementy wzbogacające album, określ jego pozycję. Położenie jest opcjonalne w przypadku elementów multimedialnych, ale musi być określone w przypadku wzbogacania albumu.

Pozycję można określić tylko podczas tworzenia elementu multimedialnego lub dodawania wzbogaceń. Dotychczasowych multimediów w albumie nie można przeorganizować, dlatego ważne jest, aby ustawić pozycję elementu podczas jego dodawania.

Początek albumu

Element multimediów lub wzbogacenia można dodać na początku albumu jako pozycję bezwzględną.

Koniec albumu

Element multimedialny lub wzbogacający można dodać na końcu albumu jako pozycjonowanie bezwzględne.

W odniesieniu do elementu multimedialnego

Element multimediów lub wzbogacenia można dodać w odniesieniu do elementu multimediów, zaczynając od jego pozycji w albumie.

W odniesieniu do elementu wzbogacenia

Element multimedialny lub wzbogacający można dodać w odniesieniu do elementu wzbogacającego, który zaczyna się po jego pozycji w albumie.

Dodawanie informacji dodatkowych do albumu

Udoskonalenia są dodawane pojedynczo i należy je dodawać do pozycji w albumie. Aby dodać do albumu udoskonalenia, wywołaj metodę albums.addEnrichment.

Jeśli żądanie się powiedzie, zwraca wartość id elementu wzbogacania, którego można użyć do pozycjonowania elementów multimedialnych lub innych ulepszeń.

REST

Oto żądanie POST:

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

Treść żądania zawiera element wzbogacenia i jego pozycję:

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

Oto przykładowa odpowiedź:

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

Obsługiwane wzbogacenia

Wzbogacenia tekstu

Wzbogacenia tekstu obejmują pojedynczy ciąg znaków (maksymalnie 1000 znaków), jak w tym przykładzie:

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

wzbogacanie danych o lokalizacji,

Wzbogacenie danych o lokalizacji obejmuje dowolną nazwę lokalizacji oraz współrzędne długości i szerokości geograficznej. locationName może zawierać maksymalnie 500 znaków.

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

wzbogacanie map;

Wzbogacenia mapy wyświetlają 2 lokalizacje, z których każda zawiera nazwę oraz współrzędne szerokości i długości geograficznej. Podobnie jak w przypadku wzbogacania danych o lokalizacji, locationName w atrybutach origin i destination może zawierać maksymalnie 500 znaków.

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

Obsługiwane pozycjonowanie

Początek albumu

Pozycja FIRST_IN_ALBUM odnosi się do początku albumu. Elementy znajdujące się w tym miejscu są wyświetlane użytkownikowi jako pierwsze:

REST

{
  "position": "FIRST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createFirstInAlbum();

PHP

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

Koniec albumu

Pozycja LAST_IN_ALBUM odnosi się do końca albumu. Elementy znajdujące się tutaj są wyświetlane użytkownikowi jako ostatnie.

REST

{
  "position": "LAST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createLastInAlbum();

PHP

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

W odniesieniu do elementu multimedialnego

Podanie pozycji relativeMediaItem odnosi się do pozycji względem elementu multimedialnego. Elementy są dodawane po określonym elemencie multimedialnym.

REST

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

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterMediaItem(mediaItemId);

PHP

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

Względem elementu wzbogacającego

Określanie relativeEnrichmentItemId odnosi się do pozycji względem elementu wzbogacenia. Elementy są dodawane po określonym elemencie wzbogacania.

REST

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

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterEnrichmentItem(enrichmentItemId);

PHP

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

Modyfikowanie rozszerzeń

Obecnie nie można modyfikować wzbogaceń. Jednak po utworzeniu i dodaniu wzbogacenia do albumu użytkownik może je modyfikować w aplikacji Zdjęcia Google.