Thêm nội dung bổ ích

Các tính năng phong phú cho phép ứng dụng của bạn kiểm soát cấu trúc và cách trình bày ảnh trong một album trên Google Photos. Chúng cho phép bạn trình bày cho người dùng ngữ cảnh bổ sung thông qua chú thích văn bản hoặc vị trí và hình ảnh đơn đặt hàng/nhóm kể một câu chuyện cùng nhau.

Phạm vi uỷ quyền bắt buộc

Để thêm nội dung bổ sung, bạn phải chọn ít nhất một trong các phạm vi sau:

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

Đối với mỗi phạm vi, lệnh gọi enrichAlbum chỉ giới hạn trong các album do ứng dụng tạo.

Khi sử dụng phạm vi .sharing, enrichAlbum bị hạn chế trong các trường hợp mà nhà phát triển hành động thay mặt cho chủ sở hữu của album chia sẻ.

Các loại nội dung bổ sung

Google Photos hỗ trợ 3 loại bổ sung trong album: văn bản, vị trí và bản đồ.

Làm phong phú văn bản

Làm giàu văn bản là một chuỗi văn bản thuần tuý có thể được chèn vào để chú thích về album.

Ảnh chụp màn hình về việc bổ sung chi tiết văn bản xuất hiện trong Google Photos

Thông tin bổ sung về vị trí

Thông tin bổ sung về vị trí là một điểm đánh dấu và tên của địa điểm có thể được chèn vào để chú thích một vị trí.

Ảnh chụp màn hình về thông tin vị trí được bổ sung chi tiết xuất hiện trong Google Photos

Nội dung bổ sung trên bản đồ

Chế độ bổ sung chi tiết bản đồ là một bản đồ có điểm gốc và điểm đến đã chỉ định và có thể chèn vào album.

Ảnh chụp màn hình về việc bổ sung chi tiết bản đồ xuất hiện trong Google Photos

Vị trí

Để chèn các mục nội dung nghe nhìn và thông tin bổ sung về đĩa nhạc, hãy chỉ định vị trí của đĩa nhạc. Bạn không bắt buộc phải xác định vị trí cho các mục nội dung đa phương tiện, nhưng bạn phải chỉ định vị trí để tăng cường chất lượng đĩa nhạc.

Bạn chỉ có thể chỉ định vị trí khi tạo một mục nội dung đa phương tiện hoặc thêm tài sản bổ sung. Bạn không thể sắp xếp lại các mục nội dung nghe nhìn hiện có trong album, vì vậy, điều quan trọng là phải đặt vị trí của mục khi thêm mục đó.

Bắt đầu album

Bạn có thể thêm một mục nội dung nghe nhìn/nội dung đa phương tiện vào đầu album dưới dạng vị trí tuyệt đối.

Hết đĩa nhạc

Bạn có thể thêm một mục nội dung nghe nhìn/nội dung đa phương tiện vào cuối album dưới dạng vị trí tuyệt đối.

So với mục nội dung nghe nhìn

Bạn có thể thêm một mục nội dung đa phương tiện/nội dung đa phương tiện vào một mục nội dung đa phương tiện bắt đầu sau vị trí của mục đó trong album.

So với mục bổ sung

Bạn có thể thêm một mục nội dung đa phương tiện/nội dung bổ sung tương ứng với một mục bổ sung bắt đầu sau vị trí của mục đó trong album.

Bổ sung kiến thức bổ ích vào album

Chúng tôi thêm từng nội dung phong phú mỗi lần và phải được thêm vào một vị trí trong album. Để thêm tính năng bổ sung vào album, hãy gọi albums.addEnrichment.

Nếu yêu cầu thành công, yêu cầu sẽ trả về id của mục bổ sung chi tiết. Mục này có thể dùng để định vị các mục nội dung đa phương tiện hoặc các chi tiết bổ sung khác.

Kiến trúc chuyển trạng thái đại diện (REST)

Sau đây là yêu cầu POST:

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

Nội dung yêu cầu bao gồm mục bổ sung và vị trí của mục đó:

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

Dưới đây là câu trả lời mẫu:

{
  "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
}

1.199

// 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
}

Nội dung bổ sung được hỗ trợ

Làm phong phú văn bản

Tính năng bổ sung văn bản chứa một chuỗi văn bản (không quá 1.000 ký tự), như trong ví dụ sau:

Kiến trúc chuyển trạng thái đại diện (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");

1.199

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

Thông tin bổ sung về vị trí

Phần bổ sung về vị trí bao gồm tên vị trí tuỳ ý cũng như vị trí vĩ độ và kinh độ. locationName chỉ được có tối đa 500 ký tự.

Kiến trúc chuyển trạng thái đại diện (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);

1.199

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

Nội dung bổ sung trên bản đồ

Phần mở rộng về bản đồ hiển thị hai vị trí, mỗi vị trí bao gồm một tên cũng như vĩ độ và kinh độ. Tương tự như việc làm phong phú vị trí, locationName trong nguồn gốc và destination chỉ được chứa 500 ký tự.

Kiến trúc chuyển trạng thái đại diện (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
);

1.199

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

Vị trí được hỗ trợ

Bắt đầu album

Vị trí FIRST_IN_ALBUM đề cập đến điểm bắt đầu của album. Các mục tìm thấy ở đây sẽ hiển thị trước tiên cho người dùng:

Kiến trúc chuyển trạng thái đại diện (REST)

{
  "position": "FIRST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createFirstInAlbum();

1.199

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

Hết đĩa nhạc

Vị trí LAST_IN_ALBUM đề cập đến phần cuối của album. Các mục nằm ở đây sẽ hiển thị cho người dùng gần đây nhất.

Kiến trúc chuyển trạng thái đại diện (REST)

{
  "position": "LAST_IN_ALBUM",
}

Java

AlbumPosition albumPosition = AlbumPositionFactory.createLastInAlbum();

1.199

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

So với mục nội dung nghe nhìn

Việc chỉ định vị trí relativeMediaItem đề cập đến một vị trí tương ứng với một mục nội dung đa phương tiện. Các mục này được thêm vào sau mục nội dung đa phương tiện đã chỉ định.

Kiến trúc chuyển trạng thái đại diện (REST)

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

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterMediaItem(mediaItemId);

1.199

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

So với mục bổ sung

Việc chỉ định relativeEnrichmentItemId đề cập đến một vị trí tương ứng với một mục tăng cường. Các mục này được thêm vào sau mục bổ sung đã chỉ định.

Kiến trúc chuyển trạng thái đại diện (REST)

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

Java

AlbumPosition albumPosition = AlbumPositionFactory.createAfterEnrichmentItem(enrichmentItemId);

1.199

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

Sửa đổi nội dung bổ sung

Hiện tại, không có cách nào để sửa đổi nội dung bổ sung. Tuy nhiên, sau khi tạo và thêm chi tiết phong phú vào album, người dùng có thể sửa đổi chi tiết bổ sung thông qua ứng dụng Google Photos.