Java 客户端库使用入门

要开始通过 Java 客户端库使用 Google Photos Library API,您需要 在开发环境中设置客户端库。 在此之前,请先启用 API 来配置您的项目 通过 Google API 控制台设置 OAuth 2.0 客户端 ID

您的应用会代表 Google 相册用户。例如,如果您在用户的 Google 相册媒体库或将媒体内容上传到用户的媒体库 Google 相册账号,用户便可通过 OAuth 2.0 协议。

OAuth 2.0 客户端 ID 可让您的应用用户登录账号、进行身份验证 从而使用 Library API。Library API 不支持 服务账号;要使用此 API,用户必须登录到有效的 Google 账号。

配置您的应用

启用 API

您必须先为项目启用 Library API,然后才能使用该 API。

  1. 转到 Google API 控制台
  2. 从菜单栏中选择一个项目或创建一个新项目。
  3. 要打开 Google API 库,请在导航菜单中选择 API 和服务 >媒体库
  4. 搜索“Google Photos Library API”。选择正确的结果并点击 启用

请求 OAuth 2.0 客户端 ID

请按照以下步骤申请 OAuth 客户端 ID 并为其配置 OAuth 客户端 ID 应用。本示例使用的应用将整个 OAuth 流程 由服务器端处理,如我们的示例中所示设置流程可能会有所不同 适用于其他实现场景

  1. 转到 Google API 控制台 并选择您的项目。
  2. 在菜单中选择 API 和服务 >凭据
  3. 凭据页面上,点击创建凭据 >OAuth 客户端 ID
  4. 选择您的应用类型。在此示例中,应用类型是 Web 应用
  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 库,可以与此客户端库结合使用。

在启动访问 Library API 的公共应用之前, 您的应用必须经过 Google 审核。“未经验证的应用”消息出现在 测试应用的界面,直到应用 经过验证

设置客户端库

Java 客户端库会为您处理所有后端 API 调用,并公开 对象,包括一些常见 API 任务的代码示例。 首先,下载并安装适用于 Java 的 Google Photos Library API 客户端库 与 GitHub 中的依赖项搭配使用。 然后,设置适用于 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 凭据

此客户端库可与 Google Auth 库结合使用, Java。如需更多信息 请参阅结合使用 OAuth 2.0 和 Google API 客户端库 Java

在以下情况下,请在 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
}

更多示例 供您试用。