Introdução à biblioteca de cliente Java

Para começar a usar a API Google Photos Library com a biblioteca de cliente Java, você precisará configure a biblioteca de cliente no seu ambiente de desenvolvimento. Antes de fazer isso, ative a API para configurar seu projeto. no Console de APIs do Google e configurando um ID do cliente OAuth 2.0.

Seu aplicativo interage com o Google Fotos em nome de um Usuário do Google Fotos. Por exemplo, quando você cria álbuns no ou fazer upload de itens de mídia para a biblioteca do Google Fotos conta do Google Fotos, o usuário autoriza essas solicitações de API por meio do protocolo OAuth 2.0.

O ID do cliente OAuth 2.0 permite que os usuários do seu aplicativo façam login, autentiquem e, assim, usar a API Library. A API Library não oferece suporte Contas de serviço para usar essa API, os usuários devem estar conectados a uma conta Conta.

Configurar o app

Ativar a API

Antes de usar a API Library, é preciso ativá-la para o projeto.

  1. Vá para o Console de APIs do Google.
  2. Na barra de menus, selecione um projeto ou crie um novo.
  3. Para abrir a biblioteca de APIs do Google, selecione APIs e Serviços > Biblioteca.
  4. Pesquise "API Google Photos Library". Selecione o resultado correto e clique Ativar.

Solicitar um ID do cliente OAuth 2.0

Siga as etapas abaixo para solicitar um ID do cliente OAuth e configurá-lo para sua para o aplicativo. Este exemplo usa um aplicativo no qual todo o fluxo OAuth está do lado do servidor, como o de nossos exemplos. O processo de configuração pode variar para outros cenários de implementação.

  1. Acesse o Console de APIs do Google. e selecione o projeto.
  2. No menu, selecione APIs e Serviços > Credenciais.
  3. Na página Credenciais, clique em Criar credenciais > ID do cliente OAuth
  4. Selecione o Tipo de aplicativo. Neste exemplo, o tipo de aplicativo é Aplicativo da Web.
  5. Registrar as origens das quais seu app tem permissão para acessar as APIs do Google da seguinte forma:

    1. Para identificar o ID do cliente, insira um nome.
    2. No campo Origens JavaScript autorizadas, insira a origem do seu app. Este campo não permite caracteres curinga.

      Você pode inserir várias origens para permitir que seu app seja executado em diferentes protocolos, domínios ou subdomínios. Os URLs inseridos podem iniciar uma solicitação OAuth.

      O exemplo a seguir mostra um URL de desenvolvimento local (nossos exemplos usam localhost:8080) e um URL de produção.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. O campo URI de redirecionamento autorizado é o endpoint que recebe do servidor OAuth 2.0. Normalmente, isso inclui ambiente de desenvolvimento de software e aponta para um caminho em seu aplicativo.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Clique em Criar.

  1. Na caixa de diálogo do cliente OAuth, faça o download do arquivo JSON. que contém a configuração do cliente. Os detalhes do cliente consistem nos seguinte:

    • ID do cliente
    • Chave secreta do cliente

    Esse arquivo JSON será usado posteriormente para configurar a biblioteca do Google Auth para Java que funciona com esta biblioteca de cliente.

Antes de lançar um aplicativo público que acesse a API Library, seu app precisa ser revisado pelo Google. Um "app não verificado" aparece tela ao testar seu aplicativo, até que ele seja verificadas.

Configure a biblioteca de cliente.

A biblioteca cliente de Java lida com todas as chamadas de API de back-end para você e expõe fáceis de usar, incluindo exemplos de código para algumas tarefas comuns da API. Primeiro, faça o download e instale a biblioteca de cliente da API Google Photos Library para Java junto com as dependências do GitHub. Em seguida, configure suas credenciais do OAuth2 para Java.

Opções de download

Aqui estão algumas opções para fazer o download da biblioteca de cliente:

  • Dependência do Gradle:

    Para usar essa biblioteca com o Gradle, adicione a seguinte dependência ao seu build.gradle.

    repositories {
      mavenCentral()
    }
    dependencies {
      compile 'com.google.photos.library:google-photos-library-client:1.7.3'
    }
    
  • Dependência do Maven:

    Para usar essa biblioteca com o Maven, adicione o seguinte ao seu Maven pom.xml .

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • Faça o download de uma versão:

    Na página de lançamentos contém diferentes artefatos para cada versão da biblioteca, incluindo arquivos jar.

  • Clone o repositório:

    Use este método se quiser alterar ou contribuir com a biblioteca, para exemplo, enviar solicitações de envio ou se quiser experimentar nossas amostras. Quando você clonar o repositório, será feito o download de todos os arquivos nesse repositório.

    1. Executar git clone https://github.com/google/java-photoslibrary.git no prompt de comando.
    2. Você terá um diretório java-photoslibrary. Para acessá-la, execute cd java-photoslibrary:
    3. Abra o arquivo build.gradle no seu ambiente de desenvolvimento integrado ou execute ./gradlew assemble em no prompt de comando para criar o projeto. Consulte ./gradlew tasks para conferir tarefas disponíveis.

Configurar as credenciais do OAuth2 para Java

Esta biblioteca de cliente funciona com a Biblioteca do Google Auth para Java (em inglês). Para mais informações, consulte Uso do OAuth 2.0 com a biblioteca de cliente de APIs do Google para Java (em inglês).

Especifique a configuração do OAuth do cliente no CredentialsProvider quando criando o PhotoLibrarySettings para um objeto PhotosLibraryClient.

Teste algumas amostras

Experimente o código abaixo para fazer sua primeira chamada de API usando a biblioteca de cliente Java.

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

Há mais exemplos no GitHub para você testar.