Inizia a utilizzare la libreria client Java

Per iniziare a utilizzare l'API Google Foto Library con la libreria client Java, devi configurare la libreria client nel tuo ambiente di sviluppo. Prima di farlo, configura il progetto abilitando l'API tramite la console API di Google e impostando un ID client OAuth 2.0.

La tua applicazione interagisce con Google Foto per conto di un utente di Google Foto. Ad esempio, quando crei album nella raccolta Google Foto di un utente o carichi elementi multimediali nell'account Google Foto di un utente, l'utente autorizza le richieste API tramite il protocollo OAuth 2.0.

L'ID client OAuth 2.0 consente agli utenti dell'applicazione di accedere, autenticarsi e, di conseguenza, utilizzare l'API Library. L'API Library non supporta gli account di servizio; per utilizzare questa API, gli utenti devono aver eseguito l'accesso a un Account Google valido.

Configura la tua app

Abilita l'API

Prima di poter utilizzare l'API Library, devi abilitarla per il tuo progetto.

  1. Vai alla console dell'API di Google.
  2. Nella barra dei menu, seleziona un progetto o creane uno nuovo.
  3. Per aprire la libreria API di Google, dal menu di navigazione seleziona API e servizi > Libreria.
  4. Cerca "API della libreria di Google Foto". Seleziona il risultato corretto e fai clic su Abilita.

Richiedere un ID client OAuth 2.0

Segui i passaggi riportati di seguito per richiedere un ID client OAuth e configurarlo per la tua applicazione. Questo esempio utilizza un'applicazione in cui l'intero flusso OAuth viene gestito sul lato server, come quello nei nostri esempi. Il processo di configurazione può variare per altri scenari di implementazione.

  1. Vai alla console API di Google e seleziona il tuo progetto.
  2. Dal menu, seleziona API e servizi > Credenziali.
  3. Nella pagina Credenziali, fai clic su Crea credenziali > ID client OAuth.
  4. Seleziona il tuo Tipo di applicazione. In questo esempio, il tipo di applicazione è Applicazione web.
  5. Registra le origini da cui la tua app può accedere alle API di Google nel seguente modo:

    1. Per identificare l'ID client, inserisci un nome.
    2. Nel campo Origini JavaScript autorizzate, inserisci l'origine della tua app. Questo campo non consente i caratteri jolly.

      Puoi inserire più origini per consentire l'esecuzione dell'app su protocolli, domini o sottodomini diversi. Gli URL che inserisci possono avviare una richiesta OAuth.

      L'esempio seguente mostra un URL di sviluppo locale (i nostri esempi utilizzano localhost:8080) e un URL di produzione.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. Il campo URI di reindirizzamento autorizzato è l'endpoint che riceve le risposte dal server OAuth 2.0. In genere, include l'ambiente di sviluppo e rimanda a un percorso nell'applicazione.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Fai clic su Crea.

  1. Dalla finestra di dialogo del client OAuth risultante, scarica il file JSON contenente la configurazione del client. I dettagli del cliente sono i seguenti:

    • ID client
    • Client secret

    Questo file JSON verrà utilizzato in un secondo momento per configurare la libreria di autenticazione Google per Java che funziona con questa libreria client.

Prima di poter lanciare un'applicazione pubblica che accede all'API Library, l'app deve essere esaminata da Google. Quando testi l'applicazione, viene visualizzato il messaggio "App non verificata" sullo schermo fino a quando non viene verificata.

Configurare la libreria client

La libreria client Java gestisce tutte le chiamate API di backend al posto tuo ed espone oggetti compatibili con cui lavorare, inclusi gli esempi di codice per alcune attività API comuni. Innanzitutto, scarica e installa la libreria client dell'API della libreria Google Foto per Java, insieme alle dipendenze da GitHub. Quindi, configura le tue credenziali OAuth2 per Java.

Opzioni di download

Di seguito sono riportate alcune opzioni per scaricare la libreria client:

  • Dipendenza graduale:

    Per utilizzare questa libreria con Gradle, aggiungi la seguente dipendenza al tuo file build.gradle.

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

    Per utilizzare questa libreria con Maven, aggiungi quanto segue al file Maven pom.xml.

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • Scaricare una release:

    La pagina delle release contiene diversi artefatti per ogni release della libreria, inclusi i file jar.

  • Clona il repository:

    Utilizza questo metodo se vuoi modificare o contribuire a questa libreria, ad esempio inviando richieste di pull o se vuoi provare i nostri campioni. Quando cloni il repository, verranno scaricati tutti i file al suo interno.

    1. Esegui git clone https://github.com/google/java-photoslibrary.git al prompt dei comandi.
    2. Verrà visualizzata una directory java-photoslibrary. Per accedere a questa funzionalità, esegui cd java-photoslibrary.
    3. Apri il file build.gradle nel tuo IDE o esegui ./gradlew assemble al prompt dei comandi per creare il progetto. Vai su ./gradlew tasks per vedere le attività disponibili.

Configura le tue credenziali OAuth2 per Java

Questa libreria client funziona con la libreria di autenticazione Google per Java. Per ulteriori informazioni, consulta la pagina relativa all'utilizzo di OAuth 2.0 con la libreria client dell'API di Google per Java.

Specifica la configurazione OAuth del tuo client in CredentialsProvider durante la creazione di PhotoLibrarySettings per un oggetto PhotosLibraryClient.

Prova alcuni esempi

Prova il codice riportato di seguito per effettuare la tua prima chiamata API utilizzando la libreria client 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
}

Esistono altri esempi su GitHub che puoi provare.