Wprowadzenie do biblioteki klienta w Javie

Aby zacząć korzystać z interfejsów API Zdjęć Google z biblioteką klienta w Javie, wykonaj te czynności: Skonfiguruj bibliotekę klienta w środowisku programistycznym. Zanim to zrobisz, skonfiguruj projekt, włączając interfejs API w Konsoli interfejsów API Google i konfigurując identyfikator klienta OAuth 2.0.

Twoja aplikacja wchodzi w interakcję ze Zdjęciami Google w imieniu Użytkownik Zdjęć Google. Gdy na przykład tworzysz albumy w bibliotece Zdjęć Google użytkownika lub przesyłasz elementy multimedialne na jego konto Zdjęć Google, użytkownik autoryzuje te żądania interfejsu API za pomocą protokołu OAuth 2.0.

Identyfikator klienta OAuth 2.0 umożliwia użytkownikom aplikacji logowanie się, uwierzytelnianie i używanie interfejsów API Photos. Interfejsy API Zdjęć Google nie obsługują konta usługi; aby korzystać z tego interfejsu API, użytkownicy muszą być zalogowani na Konto.

Konfiguracja aplikacji

Włącz API

Aby móc korzystać z interfejsów API Zdjęć, musisz je włączyć w swoim projekcie.

  1. Otwórz konsolę interfejsów API Google.
  2. Na pasku menu wybierz projekt lub utwórz nowy.
  3. Aby otworzyć bibliotekę interfejsów API Google, w menu nawigacyjnym wybierz Interfejsy API Usługi > Biblioteka.
  4. Wyszukaj „Zdjęcia Google API”. Wybierz właściwy wynik i kliknij Włącz.

Prośba o identyfikator klienta OAuth 2.0

Wykonaj poniższe czynności, aby zażądać identyfikatora klienta OAuth i skonfigurować go dla swojej aplikacji. W tym przykładzie korzystamy z aplikacji, w której cały przepływ OAuth jest po stronie serwera, jak w przykładach. Proces konfiguracji może się różnić w przypadku innych scenariuszy implementacji.

  1. Otwórz konsolę interfejsów API Google. i wybierz swój projekt.
  2. Z menu wybierz Interfejsy API i Usługi > Dane logowania.
  3. Na stronie Credentials (Dane logowania) kliknij Create Credentials (Utwórz dane logowania) > Identyfikator klienta OAuth.
  4. Wybierz Typ aplikacji. W tym przykładzie typ aplikacji to Aplikacja internetowa.
  5. Aby zarejestrować pochodzenie, z którego aplikacja ma mieć dostęp do interfejsów API Google, wykonaj te czynności:

    1. Wpisz nazwę, aby zidentyfikować identyfikator klienta.
    2. W polu Autoryzowane źródła JavaScript wpisz źródło źródła . W tym polu nie można używać symboli wieloznacznych.

      Możesz podać wiele źródeł, aby umożliwić aplikacji działanie w różnych protokolach, domenach lub subdomenach. Adresy URL, które wpisujesz, mogą uruchamiać żądanie OAuth.

      W poniższym przykładzie pokazano adres URL na potrzeby lokalnego programowania (w naszych przykładach użyto localhost:8080) i produkcyjny adres URL.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. Pole Autoryzowany identyfikator URI przekierowania to punkt końcowy, który odbiera z serwera OAuth 2.0. Zwykle obejmuje to środowisko programistyczne i wskazuje ścieżkę w aplikacji.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Kliknij Utwórz.

  1. W wyświetlonym oknie klienta OAuth pobierz plik JSON zawierający konfigurację klienta. Na dane klienta składają się: :

    • Identyfikator klienta
    • Tajny klucz klienta

    Ten plik JSON zostanie użyty później do konfiguracji z biblioteką Google Auth dla języka Java, która działa z tą biblioteką klienta.

Zanim uruchomisz publiczną aplikację, która uzyskuje dostęp do interfejsów API Zdjęć, Twoja aplikacja musi zostać sprawdzona przez Google. „Niezweryfikowana aplikacja” w podczas testowania aplikacji, aż stanie się zweryfikowane.

Konfigurowanie biblioteki klienta

Biblioteka klienta w języku Java obsługuje za Ciebie wszystkie wywołania interfejsu API backendu i udostępnia łatwe do wykorzystania obiekty, w tym przykłady kodu do typowych zadań interfejsu API. Najpierw pobierz i zainstaluj bibliotekę klienta interfejsów API Zdjęć Google dla języka Java z zależnościami z GitHub. Następnie skonfiguruj swoje dane logowania OAuth2 dla środowiska Java.

Opcje pobierania

Oto kilka sposobów pobrania biblioteki klienta:

  • Zależność Gradle:

    Aby używać tej biblioteki z Gradle, dodaj tę zależność do build.gradle.

    repositories {
      mavenCentral()
    }
    dependencies {
      compile 'com.google.photos.library:google-photos-library-client:1.7.3'
    }
    
  • Zależność Maven:

    Aby używać tej biblioteki z Mavenem, dodaj do pliku Maven pom.xml poniższy kod.

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

    strony wersji. zawiera różne artefakty dla każdej wersji biblioteki, w tym pliki jar.

  • Sklonuj repozytorium:

    Użyj tej metody, jeśli chcesz zmienić tę bibliotekę lub dodać do niej swój wkład, na przykład przesyłając prośby o przechwycenie, lub jeśli chcesz wypróbować nasze sample. Gdy sklonujesz repozytorium, wszystkie pliki w tym repozytorium zostaną pobrane.

    1. Uruchom git clone https://github.com/google/java-photoslibrary.git w wiersza poleceń.
    2. Otrzymasz java-photoslibrary katalog. Otwórz ją, uruchamiając cd java-photoslibrary.
    3. Otwórz plik build.gradle w swoim środowisku IDE lub uruchom ./gradlew assemble w wierszu poleceń, aby skompilować projekt. Zobacz ./gradlew tasks, aby dowiedzieć się więcej dostępnych zadań.

Konfigurowanie danych logowania OAuth2 w Javie

Ta biblioteka klienta współpracuje z biblioteką uwierzytelniania Google dla Java). Więcej informacji znajdziesz w artykule Korzystanie z OAuth 2.0 w bibliotece klienta interfejsu API Google dla języka Java.

Określ konfigurację OAuth klienta w CredentialsProvider, gdy tworząc PhotoLibrarySettings dla obiektu PhotosLibraryClient.

Wypróbuj kilka próbek

Aby wykonać pierwsze wywołanie interfejsu API za pomocą biblioteki klienta Java, spróbuj użyć poniższego kodu.

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

Na GitHubie znajdziesz więcej próbek.