開始使用 Java 用戶端程式庫

如要開始使用 Google 相簿 API 和 Java 用戶端程式庫,您必須在開發環境中設定用戶端程式庫。在執行這項操作前,請先設定專案,方法是透過 Google API 控制台啟用 API,並設定 OAuth 2.0 用戶端 ID。

您的應用程式代表 Google 相簿使用者。例如,當您在使用者的 Google 相簿相片庫或將媒體項目上傳到使用者的 Google 相簿帳戶,使用者透過 OAuth 2.0 通訊協定。

OAuth 2.0 用戶端 ID 可讓應用程式使用者登入、驗證 並使用 Photos APIPhotos API 不支援 或服務帳戶如要使用這個 API,使用者必須登入有效的 Google 。

設定應用程式

啟用 API

您必須先為專案啟用 Photos API,才能使用 Google Photos API。

  1. 前往 Google API 控制台
  2. 在選單列中,選取專案或建立新專案。
  3. 如要開啟 Google API 程式庫,請在導覽選單中依序選取「API 和服務」>「程式庫」
  4. 搜尋「Google Photos API」。選取正確的結果,然後按一下「啟用」

要求 OAuth 2.0 用戶端 ID

請按照下列步驟申請 OAuth 用戶端 ID,並為其進行設定 應用程式。這個範例會使用整個 OAuth 流程由伺服器端處理的應用程式,例如範例中的應用程式。其他導入情境的設定程序可能有所不同。

  1. 前往 Google API 控制台,然後選取您的專案。
  2. 在選單中,依序選取「API 和服務」>「憑證」
  3. 在「Credentials」(憑證) 頁面上,按一下「Create Credentials」(建立憑證) > OAuth 用戶端 ID
  4. 選取「應用程式類型」。在這個範例中,應用程式類型為 網頁應用程式
  5. 註冊應用程式可存取 Google API 的來源,如下所示:

    1. 為識別用戶端 ID,請輸入名稱。
    2. 在「授權的 JavaScript 來源」欄位中,輸入應用程式的來源。這個欄位不支援萬用字元。

      您可以輸入多個來源,讓應用程式在不同的通訊協定、網域或子網域上執行。您輸入的網址可用於啟動 OAuth 要求。

      以下範例是本機開發網址 (我們的範例使用 localhost:8080) 和正式版網址。

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. 「授權的重新導向 URI」欄位是接收到的端點 OAuth 2.0 伺服器的回應。通常包括開發環境,並指向應用程式中的路徑。

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. 按一下「建立」

  1. 在產生的 OAuth 用戶端對話方塊中,下載 JSON 檔案 包含用戶端設定用戶端詳細資料包含 包括:

    • 用戶端 ID
    • 用戶端密碼

    這個 JSON 檔案稍後會用於設定可與此用戶端程式庫搭配使用的 Java 專用 Google Auth 程式庫。

您必須先讓 Google 審查應用程式,才能推出可存取 Google 相簿 API 的公開應用程式。在您測試應用程式之前,畫面上會顯示「未驗證的應用程式」訊息,直到應用程式通過驗證為止。

設定用戶端程式庫

Java 用戶端程式庫會為您處理所有後端 API 呼叫 方便使用的物件,包括一些常見 API 工作的程式碼範例。 首先,請從 GitHub 下載並安裝適用於 Java 的 Google 相簿 API 用戶端程式庫,以及相關依附元件。接著,設定 Java 的 OAuth2 憑證。

下載選項

下載用戶端程式庫的方式如下:

  • Gradle 依附元件:

    如要搭配 Gradle 使用這個程式庫,請將下列依附元件新增至 build.gradle 檔案。

    repositories {
      mavenCentral()
    }
    dependencies {
      compile 'com.google.photos.library:google-photos-library-client:1.7.3'
    }
    
  • Maven 依附元件:

    如要搭配 Maven 使用這個程式庫,請將以下內容新增至 Maven pom.xml 檔案。

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • 下載版本:

    版本頁面包含每個程式庫版本的不同構件,包括 JAR 檔案。

  • 複製存放區:

    如要修改或為這個程式庫提供內容,請使用這個方法 例如提交提取要求,或想試用範例複製存放區時,系統會下載這個存放區中的所有檔案。

    1. 在命令提示字元中執行 git clone https://github.com/google/java-photoslibrary.git
    2. 您會收到 java-photoslibrary 目錄。前往該位置:執行 cd java-photoslibrary
    3. 在 IDE 中開啟 build.gradle 檔案,或在 ./gradlew assemble 執行 使用命令提示字元建構專案查看「./gradlew tasks」即可查看 可用的工作。

設定 Java 的 OAuth2 憑證

這個用戶端程式庫可搭配 Java 適用的 Google 驗證程式庫使用。詳情請參閱「使用 OAuth 2.0 搭配適用於 Java 的 Google API 用戶端程式庫」。

在下列情況下,請在 CredentialsProvider 中指定您的用戶端 OAuth 設定 建立 PhotosLibraryClient 物件的 PhotoLibrarySettings

試用一些範例

請嘗試以下程式碼,透過 Java 用戶端程式庫發出第一個 API 呼叫。

// Set up the Photos Library Client that interacts with the API
PhotosLibrarySettings settings =
     PhotosLibrarySettings.newBuilder()
    .setCredentialsProvider(
        FixedCredentialsProvider.create(/* Add credentials here. */)) 
    .build();

try (PhotosLibraryClient photosLibraryClient =
    PhotosLibraryClient.initialize(settings)) {

    // Create a new Album  with at title
    Album createdAlbum = photosLibraryClient.createAlbum("My Album");

    // Get some properties from the album, such as its ID and product URL
    String id = album.getId();
    String url = album.getProductUrl();

} catch (ApiException e) {
    // Error during album creation
}

GitHub 上還有更多範例可供您試用。