Zengin öğeler ekleyin

Zenginleştirmeler uygulamanızın yapısını ve sunumunu kontrol etmesini sağlar. Google Fotoğraflar'daki bir albümde bulunan fotoğraflar. Kullanıcıya zaman çizelgesinde metin veya konum ek açıklamaları ve sipariş/grup aracılığıyla ek bağlamla birlikte bir hikaye anlatan görsellerdir.

Gerekli yetkilendirme kapsamı

Zenginleştirme eklemek için aşağıdaki kapsamlardan en az biri gerekir:

  • photoslibrary.appendonly
  • photoslibrary.library
  • photoslibrary.sharing

Her kapsam için enrichAlbum çağrısı yalnızca oluşturulan albümlerle sınırlıdır elde edebiliyorlar.

.sharing kapsamı kullanılırken enrichAlbum koşullarıyla sınırlıdır Geliştiricinin paylaşılan albümün sahibi adına hareket ettiği albüm.

Zenginleştirme türleri

Google Fotoğraflar, albümlerde üç tür zenginleştirmeyi destekler: metin, Google Haritalar'ı kullanır.

Metin zenginleştirmeleri

Metin zenginleştirme, albümünüz.

Google Fotoğraflar'da gösterilen metin zenginleştirmenin ekran görüntüsü

Konum zenginleştirmeleri

Konum zenginleştirme, bir işaretçi ve eklenebilecek yerin adıdır bir konuma not ekleyin.

Google Fotoğraflar'da gösterilen bir konum zenginleştirmenin ekran görüntüsü

Harita zenginleştirmeleri

Harita zenginleştirmesi, haritadaki mevcut bilgilerin doğru şekilde albüm eklendi.

Google Fotoğraflar'da gösterilen harita zenginleştirmesinin ekran görüntüsü

Konumlar

Medya öğeleri ve albüm zenginleştirmeleri eklemek için albümün konumunu belirtin. Medya öğeleri için konum isteğe bağlıdır, ancak albüm için belirtilmelidir sağlar.

Bir konum, yalnızca şu durumlarda belirtilebilir: medya öğesi oluşturma veya zenginleştirmeler ekleyin. Bir albümdeki mevcut medya öğeleri yeniden düzenlenemeyeceğinden eklenirken öğenin konumunu ayarlamak önemlidir.

Albümün başı

Bir medya/zenginleştirme öğesi, albümün başına mutlak olarak eklenebilir yardımcı olabilir.

Albümün sonu

Albümün sonuna mutlak olarak bir medya/zenginleştirme öğesi eklenebilir yardımcı olabilir.

Medya öğesine göre

Bir medya/zenginleştirme öğesi, şundan başlayan bir medya öğesine göre eklenebilir: yerini alabilir.

Zenginleştirme öğesine göre

Bir medya/zenginleştirme öğesi, baştaki bir zenginleştirme öğesine göre eklenebilir sonra otomatik olarak ekler.

Albüme zenginleştirmeler ekleniyor

Zenginleştirmeler teker teker eklenir ve albümdeki bir konuma eklenmesi gerekir. Bir albüme zenginleştirme eklemek için şunu arayın: albums.addEnrichment.

İstek başarılı olursa zenginleştirme öğesinin id değerini döndürür. medya öğelerini veya diğer zenginleştirmeleri konumlandırmak için kullanılabilir.

REST

Bir POST isteği şu şekildedir:

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

İsteğin gövdesi, zenginleştirme öğesinden ve bu öğenin konumundan oluşur:

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

Aşağıda örnek bir yanıt verilmiştir:

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

Java

try {
  // Create the enrichment using the NewEnrichmentItemFactory helper
  NewEnrichmentItem newEnrichmentItem = NewEnrichmentItemFactory.createTextEnrichment("");

  // Set the position of the enrichment within the album
  AlbumPosition albumPosition = AlbumPositionFactory.createFirstInAlbum();

  // To add an enrichment, specify the album, the enrichment item,
  // and the position in the album where the enrichment is to be added
  AddEnrichmentToAlbumResponse response = photosLibraryClient
      .addEnrichmentToAlbum(albumId, newEnrichmentItem, albumPosition);
  // The response contains an EnrichmentItem
  // whose ID can be used to position media items or other enrichments
  EnrichmentItem enrichmentItem = response.getEnrichmentItem();
  String itemId = enrichmentItem.getId();
} catch (ApiException e) {
  // Handle error
}

PHP

// Create the enrichment item using the PhotosLibraryResourceFactory helper
$newEnrichmentItem = PhotosLibraryResourceFactory::newEnrichmentItemWithText("");
// ...
// Set the position of the enrichment within the album
$position = new AlbumPosition();
// ...
try {
    // To add an enrichment, specify the album, the enrichment item,
    // and the position in the album where the enrichment is to be added
    $response = $photosLibraryClient->addEnrichmentToAlbum($albumId, $newEnrichmentItem, $position);
    // The response contains an EnrichmentItem
    // whose ID can be used to position media items or other enrichments
    $enrichmentItem = $response->getEnrichmentItem();
    $itemId = $enrichmentItem->getId();

} catch (\Google\ApiCore\ApiException $e) {
    // Handle error
}

Desteklenen zenginleştirmeler

Metin zenginleştirmeleri

Metin zenginleştirmeleri tek bir metin dizesi (en fazla 1000 karakter) içerir. aşağıdaki örnekte gösterilmektedir:

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

Konum zenginleştirmeleri

Konum zenginleştirmeleri rastgele bir konum adı ile enlem ve boylam konumu. locationName 500 karakterle sınırlıdır.

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

Harita zenginleştirmeleri

Harita zenginleştirmeleri, her biri bir ad ve enlemden oluşan iki konum gösterir görüntüleyebilirsiniz. Konum zenginleştirmeye benzer şekilde, locationName kaynak ve destination 500 karakterle sınırlıdır.

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

Desteklenen konumlandırma

Albümün başı

FIRST_IN_ALBUM konumu, albümün başlangıcını belirtir. Bulunan öğeler kullanıcıya ilk önce burada gösterilir:

REST

{
  "position": "FIRST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createFirstInAlbum();

PHP

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

Albümün sonu

LAST_IN_ALBUM konumu albümün sonunu belirtir. Burada bulunan öğeler kullanıcıya en son gösterilir.

REST

{
  "position": "LAST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createLastInAlbum();

PHP

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

Medya öğesine göre

relativeMediaItem konumunun belirtilmesi, medya öğesi. Öğeler, belirtilen medya öğesinden sonra eklenir.

REST

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

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterMediaItem(mediaItemId);

PHP

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

Zenginleştirme öğesine göre

Bir relativeEnrichmentItemId belirtilmesi, zenginleştirme öğesidir. Öğeler, belirtilen zenginleştirme öğesinden sonra eklenir.

REST

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

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterEnrichmentItem(enrichmentItemId);

PHP

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

Zenginleştirmeleri değiştirme

Şu anda zenginleştirmeleri değiştirmenin bir yolu yoktur. Bununla birlikte, zenginleştirme oluşturulduktan ve bir albüme eklendiyse, kullanıcı, zenginleştirmeleri değiştirebilir Google Fotoğraflar uygulaması üzerinden ekleyebilirsiniz.