Erste Schritte mit der Java-Clientbibliothek

Wenn Sie die Google Photos Library API mit der Java-Clientbibliothek verwenden möchten, müssen Sie in Ihrer Entwicklungsumgebung die Clientbibliothek einrichten. Bevor Sie dies tun, müssen Sie Ihr Projekt konfigurieren. Aktivieren Sie dazu die API über die Google API Console und richten Sie eine OAuth 2.0-Client-ID ein.

Ihre Anwendung interagiert im Namen eines Google Fotos-Nutzers mit Google Fotos. Wenn Sie beispielsweise Alben in der Google Fotos-Galerie eines Nutzers erstellen oder Medienelemente in das Google Fotos-Konto eines Nutzers hochladen, autorisiert der Nutzer diese API-Anfragen über das OAuth 2.0-Protokoll.

Mit der OAuth 2.0-Client-ID können sich die Nutzer Ihrer Anwendung anmelden, authentifizieren und dabei die Library API verwenden. Die Library API unterstützt keine Dienstkonten. Nutzer müssen in einem gültigen Google-Konto angemeldet sein, um diese API verwenden zu können.

Eigene App konfigurieren

API aktivieren

Bevor Sie die Library API verwenden können, müssen Sie sie für Ihr Projekt aktivieren.

  1. Gehen Sie zur Google API Console.
  2. Wähle in der Menüleiste ein Projekt aus oder erstelle ein neues Projekt.
  3. Wählen Sie im Navigationsmenü APIs & Dienste > Bibliothek aus, um die Google API-Bibliothek zu öffnen.
  4. Suchen Sie nach „Google Photos Library API“. Wählen Sie das richtige Ergebnis aus und klicken Sie auf Aktivieren.

OAuth 2.0-Client-ID anfordern

Führen Sie die folgenden Schritte aus, um eine OAuth-Client-ID anzufordern und für Ihre Anwendung zu konfigurieren. In diesem Beispiel wird eine Anwendung verwendet, bei der der gesamte OAuth-Ablauf serverseitig verarbeitet wird, wie die in unseren Beispielen. Der Einrichtungsprozess kann je nach Implementierungsszenarien variieren.

  1. Rufe die Google API Console auf und wähle dein Projekt aus.
  2. Wähle im Menü APIs und Dienste > Anmeldedaten aus.
  3. Klicken Sie auf der Seite Anmeldedaten auf Anmeldedaten erstellen > OAuth-Client-ID.
  4. Wählen Sie den Anwendungstyp aus. In diesem Beispiel lautet der Anwendungstyp Webanwendung.
  5. Registrieren Sie die Quellen, von denen Ihre App auf die Google APIs zugreifen darf:

    1. Geben Sie einen Namen ein, um die Client-ID zu identifizieren.
    2. Geben Sie im Feld Autorisierte JavaScript-Quellen den Ursprung für Ihre App ein. In diesem Feld sind keine Platzhalter zulässig.

      Sie können mehrere Ursprünge eingeben, damit Ihre Anwendung in verschiedenen Protokollen, Domains oder Subdomains ausgeführt werden kann. Die eingegebenen URLs dürfen eine OAuth-Anfrage starten.

      Das folgende Beispiel zeigt eine lokale Entwicklungs-URL (in unseren Beispielen localhost:8080) und eine Produktions-URL.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. Das Feld Autorisierter Weiterleitungs-URI ist der Endpunkt, der Antworten vom OAuth 2.0-Server empfängt. In der Regel umfasst dies Ihre Entwicklungsumgebung und verweist auf einen Pfad in Ihrer Anwendung.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Klicken Sie auf Erstellen.

  1. Laden Sie im resultierenden OAuth-Client-Dialogfeld die JSON-Datei mit Ihrer Clientkonfiguration herunter. Ihre Clientdetails sehen so aus:

    • Client-ID
    • Clientschlüssel

    Diese JSON-Datei wird später zum Einrichten der Google Auth-Bibliothek für Java verwendet, die mit dieser Clientbibliothek funktioniert.

Bevor Sie eine öffentliche Anwendung starten können, die auf die Library API zugreift, muss Ihre Anwendung von Google geprüft werden. Wenn Sie Ihre Anwendung testen, wird die Meldung „Nicht überprüfte Anwendung“ angezeigt, bis sie bestätigt ist.

Clientbibliothek einrichten

Die Java-Clientbibliothek übernimmt alle Back-End API-Aufrufe und stellt nutzerfreundliche Objekte bereit, mit denen Sie arbeiten können, einschließlich Codebeispielen für einige gängige API-Aufgaben. Laden Sie zuerst die Clientbibliothek der Google Photos Library API für Java zusammen mit den Abhängigkeiten von GitHub herunter und installieren Sie sie. Richten Sie dann Ihre OAuth2-Anmeldedaten für Java ein.

Downloadoptionen

So laden Sie die Clientbibliothek herunter:

  • Gradle-Abhängigkeit:

    Wenn Sie diese Bibliothek mit Gradle verwenden möchten, fügen Sie der Datei build.gradle die folgende Abhängigkeit hinzu.

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

    Fügen Sie der Maven-Datei pom.xml Folgendes hinzu, um diese Bibliothek mit Maven zu verwenden.

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • Release herunterladen:

    Die Release-Seite enthält verschiedene Artefakte für jeden Bibliotheksrelease, einschließlich JAR-Dateien.

  • Repository klonen:

    Verwenden Sie diese Methode, wenn Sie diese Bibliothek ändern oder dazu beitragen möchten, z. B. Pull-Anfragen senden, oder wenn Sie unsere Beispiele ausprobieren möchten. Wenn Sie das Repository klonen, werden alle Dateien in diesem Repository heruntergeladen.

    1. Führen Sie über die Eingabeaufforderung git clone https://github.com/google/java-photoslibrary.git aus.
    2. Sie erhalten ein java-photoslibrary-Verzeichnis. Rufen Sie sie auf, indem Sie cd java-photoslibrary ausführen.
    3. Öffnen Sie die Datei build.gradle in Ihrer IDE oder führen Sie ./gradlew assemble über die Eingabeaufforderung aus, um das Projekt zu erstellen. Unter ./gradlew tasks finden Sie die verfügbaren Aufgaben.

OAuth2-Anmeldedaten für Java einrichten

Diese Clientbibliothek funktioniert mit der Google-Authentifizierungsbibliothek für Java. Weitere Informationen finden Sie unter OAuth 2.0 mit der Google API-Clientbibliothek für Java verwenden.

Gib deine Client-OAuth-Konfiguration in der CredentialsProvider an, wenn du das PhotoLibrarySettings-Objekt für ein PhotosLibraryClient-Objekt erstellst.

Beispiele ausprobieren

Probieren Sie den folgenden Code aus, um Ihren ersten API-Aufruf mit der Java-Clientbibliothek auszuführen.

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

Auf GitHub gibt es weitere Beispiele zum Ausprobieren.