Premiers pas avec la bibliothèque cliente Java

Pour commencer à utiliser l'API Library de Google Photos avec la bibliothèque cliente Java, vous devez configurer la bibliothèque cliente dans votre environnement de développement. Avant cela, configurez votre projet en activant l'API via la console Google APIs et en configurant un ID client OAuth 2.0.

Votre application interagit avec Google Photos au nom d'un utilisateur de Google Photos. Par exemple, lorsque vous créez des albums dans la bibliothèque Google Photos d'un utilisateur ou importez des éléments multimédias dans le compte Google Photos d'un utilisateur, celui-ci autorise ces requêtes API via le protocole OAuth 2.0.

L'ID client OAuth 2.0 permet aux utilisateurs de votre application de se connecter, de s'authentifier et donc d'utiliser l'API Library. L'API Library n'est pas compatible avec les comptes de service. Pour l'utiliser, les utilisateurs doivent être connectés à un compte Google valide.

Configurer votre application

Activer l'API

Avant de pouvoir utiliser l'API Library, vous devez l'activer pour votre projet.

  1. Accédez à la console Google APIs.
  2. Dans la barre de menu, sélectionnez un projet ou créez-en un.
  3. Pour ouvrir la bibliothèque d'API Google, dans le menu de navigation, sélectionnez API et services > Bibliothèque.
  4. Recherchez "API Google Photos Library". Sélectionnez le résultat correct, puis cliquez sur Activer.

Demander un ID client OAuth 2.0

Suivez les étapes ci-dessous pour demander un ID client OAuth et le configurer pour votre application. Cet exemple utilise une application dans laquelle l'ensemble du flux OAuth est géré côté serveur, comme celui de nos exemples. Le processus de configuration peut varier pour d'autres scénarios d'implémentation.

  1. Accédez à la console Google APIs, puis sélectionnez votre projet.
  2. Dans le menu, sélectionnez API et services > Identifiants.
  3. Sur la page Identifiants, cliquez sur Créer des identifiants > ID client OAuth.
  4. Sélectionnez votre type d'application. Dans cet exemple, le type d'application est Web application (Application Web).
  5. Enregistrez les origines à partir desquelles votre application est autorisée à accéder aux API Google comme suit:

    1. Pour identifier l'ID client, saisissez un nom.
    2. Dans le champ Origines JavaScript autorisées, saisissez l'origine de votre application. Ce champ n'accepte pas les caractères génériques.

      Vous pouvez indiquer plusieurs origines pour permettre à votre application de s'exécuter sur différents protocoles, domaines ou sous-domaines. Les URL que vous saisissez sont autorisées à lancer une requête OAuth.

      L'exemple suivant présente une URL de développement local (nos exemples utilisent localhost:8080) et une URL de production.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. Le champ URI de redirection autorisé correspond au point de terminaison qui reçoit les réponses du serveur OAuth 2.0. En règle générale, cela inclut votre environnement de développement et pointe vers un chemin d'accès dans votre application.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Cliquez sur Créer.

  1. Dans la boîte de dialogue du client OAuth qui s'affiche, téléchargez le fichier JSON contenant votre configuration client. Les informations sur votre client comprennent les éléments suivants:

    • ID client
    • Client secret (Code secret du client)

    Ce fichier JSON sera utilisé ultérieurement pour configurer la bibliothèque Google Auth pour Java, qui fonctionne avec cette bibliothèque cliente.

Avant de pouvoir lancer une application publique qui accède à l'API Library, elle doit être examinée par Google. Le message "Application non validée" s'affiche à l'écran lorsque vous testez votre application, jusqu'à ce qu'elle soit validée.

Configurez la bibliothèque cliente

La bibliothèque cliente Java gère tous les appels d'API backend à votre place et expose des objets utilisables, y compris des exemples de code pour certaines tâches d'API courantes. Tout d'abord, téléchargez et installez la bibliothèque cliente de l'API Google Photos Library pour Java, ainsi que les dépendances de GitHub. Ensuite, configurez vos identifiants OAuth2 pour Java.

Options de téléchargement

Voici quelques options pour télécharger la bibliothèque cliente:

  • Dépendance Gradle:

    Pour utiliser cette bibliothèque avec Gradle, ajoutez la dépendance suivante à votre fichier build.gradle.

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

    Pour utiliser cette bibliothèque avec Maven, ajoutez le code suivant à votre fichier Maven pom.xml.

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • Télécharger une release:

    La page des versions contient différents artefacts pour chaque version de la bibliothèque, y compris des fichiers JAR.

  • Clonez le dépôt:

    Utilisez cette méthode si vous souhaitez modifier cette bibliothèque ou y contribuer, par exemple pour envoyer des requêtes d'extraction ou pour essayer nos exemples. Lorsque vous clonez le dépôt, tous les fichiers qu'il contient sont téléchargés.

    1. Exécutez git clone https://github.com/google/java-photoslibrary.git dans l'invite de commande.
    2. Vous obtiendrez un répertoire java-photoslibrary. Pour y accéder, exécutez cd java-photoslibrary.
    3. Ouvrez le fichier build.gradle dans votre IDE ou exécutez ./gradlew assemble dans l'invite de commande pour compiler le projet. Consultez ./gradlew tasks pour afficher les tâches disponibles.

Configurer vos identifiants OAuth2 pour Java

Cette bibliothèque cliente fonctionne avec la bibliothèque Google Auth pour Java. Pour en savoir plus, consultez l'article Utiliser OAuth 2.0 avec la bibliothèque cliente des API Google pour Java.

Spécifiez la configuration OAuth de votre client dans le fichier CredentialsProvider lors de la création du PhotoLibrarySettings pour un objet PhotosLibraryClient.

Tester quelques exemples

Essayez le code ci-dessous pour effectuer votre premier appel d'API à l'aide de la bibliothèque 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
}

Vous pouvez tester d'autres exemples sur GitHub.