Mulai menggunakan library klien Java

Untuk mulai menggunakan Google Photos API dengan library klien Java, Anda harus siapkan library klien di lingkungan pengembangan Anda. Sebelum melakukannya, konfigurasi project Anda dengan mengaktifkan API melalui Konsol Google API dan menyiapkan client ID OAuth 2.0.

Aplikasi Anda berinteraksi dengan Google Foto atas nama pengguna Google Foto. Misalnya, saat Anda membuat album di Galeri Google Foto atau upload item media ke galeri foto pengguna akun Google Foto, pengguna mengizinkan permintaan API ini melalui OAuth 2.0.

Client ID OAuth 2.0 memungkinkan pengguna aplikasi Anda login, mengautentikasi, dan menggunakan Photos API. Photos API tidak mendukung akun layanan; untuk menggunakan API ini, pengguna harus login ke menggunakan Akun Layanan Anda.

Mengonfigurasi aplikasi Anda

Mengaktifkan API

Sebelum dapat menggunakan Photos API, Anda harus mengaktifkannya untuk project Anda.

  1. Buka Konsol Google API.
  2. Dari menu bar, pilih project atau buat project baru.
  3. Untuk membuka Library Google API, dari menu Navigation, pilih APIs & Services > Library.
  4. Telusuri "Google Photos API". Pilih hasil yang benar, lalu klik Aktifkan.

Meminta client ID OAuth 2.0

Ikuti langkah-langkah di bawah untuk meminta client ID OAuth dan mengonfigurasinya untuk aplikasi Anda. Contoh ini menggunakan aplikasi yang seluruh alur OAuth yang ditangani sisi server, seperti yang ada dalam contoh kami. Proses penyiapan dapat bervariasi untuk skenario penerapan lainnya.

  1. Buka Konsol API Google lalu pilih project Anda.
  2. Dari menu, pilih APIs & Services > Credentials.
  3. Di halaman Credentials, klik Create Credentials > Client ID OAuth yang baru.
  4. Pilih Jenis aplikasi Anda. Dalam contoh ini, jenis aplikasinya adalah Aplikasi web.
  5. Daftarkan origin tempat aplikasi Anda diizinkan untuk mengakses Google API seperti berikut:

    1. Untuk mengidentifikasi client ID, masukkan nama.
    2. Di kolom Asal JavaScript yang sah, masukkan origin untuk . Kolom ini tidak mengizinkan karakter pengganti.

      Anda dapat memasukkan beberapa origin untuk memungkinkan aplikasi berjalan di berbagai protokol, domain, atau subdomain. URL yang Anda masukkan diizinkan untuk memulai permintaan OAuth.

      Contoh berikut menunjukkan URL pengembangan lokal (contoh kami menggunakan localhost:8080) dan URL produksi.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. Kolom URI alihan yang diberi otorisasi adalah endpoint yang menerima respons dari server OAuth 2.0. Biasanya, hal ini mencakup pengembangan aplikasi dan menunjuk ke jalur dalam aplikasi Anda.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Klik Buat.

  1. Dari dialog klien OAuth yang dihasilkan, download file JSON yang berisi konfigurasi klien Anda. Detail klien Anda terdiri dari berikut ini:

    • Client ID
    • Rahasia klien

    File JSON ini akan digunakan nanti untuk menyiapkan library Google Auth untuk Java yang berfungsi dengan library klien ini.

Sebelum Anda dapat meluncurkan aplikasi publik yang mengakses Photos API, aplikasi Anda harus ditinjau oleh Google. "Aplikasi belum terverifikasi" muncul pada saat Anda menguji aplikasi, hingga terverifikasi.

Menyiapkan library klien

Library klien Java menangani semua panggilan API backend untuk Anda, dan mengekspos objek yang mudah digunakan, termasuk contoh kode untuk beberapa tugas API umum. Pertama-tama, unduh dan instal pustaka klien Google Photos API untuk Java bersama dengan dependensi dari GitHub. Kemudian, siapkan kredensial OAuth2 Anda untuk Java.

Opsi download

Berikut ini beberapa opsi untuk mendownload library klien:

  • Dependensi Gradle:

    Untuk menggunakan library ini dengan Gradle, tambahkan dependensi berikut ke file build.gradle Anda.

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

    Untuk menggunakan library ini dengan Maven, tambahkan kode berikut ke file pom.xml Maven Anda.

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

    Halaman rilis berisi artefak yang berbeda untuk setiap rilis library, termasuk file jar.

  • Lakukan clone repositori:

    Gunakan metode ini jika Anda ingin mengubah atau berkontribusi pada library ini, misalnya, mengirim permintaan pull, atau jika Anda ingin mencoba contoh kami. Saat Anda meng-clone repositori, semua file di repositori ini akan didownload.

    1. Jalankan git clone https://github.com/google/java-photoslibrary.git di command prompt.
    2. Anda akan mendapatkan direktori java-photoslibrary. Navigasi dengan menjalankan cd java-photoslibrary.
    3. Buka file build.gradle di IDE Anda atau jalankan ./gradlew assemble di command prompt untuk mem-build project. Lihat ./gradlew tasks untuk melihat tugas yang tersedia.

Menyiapkan kredensial OAuth2 untuk Java

Library klien ini berfungsi dengan Library Google Auth untuk Java. Untuk informasi selengkapnya, lihat Menggunakan OAuth 2.0 dengan Library Klien Google API untuk Java.

Tentukan konfigurasi OAuth klien Anda di CredentialsProvider saat membuat PhotoLibrarySettings untuk objek PhotosLibraryClient.

Mencoba beberapa contoh

Coba kode di bawah untuk melakukan panggilan API pertama menggunakan library klien 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
}

Ada lebih banyak sampel di GitHub untuk Anda coba.