Setelah pengguna memilih item media menggunakan Picker API, Anda dapat mengambil informasi tentang item tersebut dan mengakses kontennya. Panduan ini menguraikan proses mencantumkan dan mengambil item media.
Sebelum memulai
- Pahami alur: Tinjau memulai Picker API untuk mengetahui ringkasan seluruh proses pemilihan foto.
- Selesaikan pemilihan item media: Pastikan pengguna telah berhasil memilih item media dari sesi mereka. Lihat panduan tentang sesi untuk mengetahui detail selengkapnya.
- Tinjau cakupan otorisasi yang diperlukan: Untuk menggunakan sesi, Anda memerlukan cakupan
photospicker.mediaitems.readonly
. Untuk informasi selengkapnya tentang cakupan, lihat Cakupan otorisasi.
Mencantumkan item media yang dipilih
Gunakan endpoint
mediaItems.list
: Buat permintaan GET ke https://photospicker.googleapis.com/v1/mediaItems, dengan memberikansessionId
sebagai parameter kueri.Menangani penomoran halaman (jika perlu):
Jika pengguna memilih banyak item, responsnya mungkin diberi nomor halaman. Gunakan
nextPageToken
dalam respons untuk mengambil halaman hasil berikutnya.Memproses item media: Respons akan berisi array objek
PickedMediaItem
, yang masing-masing mewakili item media yang dipilih. Objek ini mencakup detail penting seperti:id
: ID unik untuk item media.baseUrl
: URL dasar tempat Anda dapat membuat URL untuk mengakses konten item media dalam berbagai resolusi.mimeType
: Jenis MIME item media (misalnya, image/jpeg, video/mp4).
Mengambil item media yang dipilih
Pastikan Anda memiliki token akses OAuth 2.0 yang valid dengan cakupan https://www.googleapis.com/auth/photospicker.mediaitems.readonly
untuk memberikan otorisasi pada permintaan Anda.
Buat URL konten: Gunakan
baseUrl
dari objekPickedMediaItem
. Tambahkan resolusi atau format file ke baseUrl. Lihat bagian tentang URL dasar untuk mengetahui detail selengkapnya.Mengambil konten: Buat permintaan GET ke URL dasar item media. Respons akan berisi byte item media (gambar atau video). Ada beberapa opsi baseURL yang berbeda yang tersedia.
URL Dasar
URL dasar di Google Photos API memberikan akses ke byte mentah item media, sehingga aplikasi Anda dapat mendownload atau menampilkannya. URL ini disertakan dalam respons saat mencantumkan album (Library API) atau mengakses item media (Library dan Picker API). Ingat, URL dasar memerlukan parameter tambahan agar berfungsi dengan benar.
Untuk Picker API:
Semua objek PickedMediaItem.mediaFile
menyertakan baseUrl
.
URL dasar tetap aktif selama 60 menit, tetapi dapat berakhir lebih cepat jika pengguna membatalkan izin aplikasi Anda melalui setelan Akun Google mereka.
Untuk Library API:
URL dasar tetap aktif selama 60 menit.
Berbagai URL dasarnya adalah:
baseUrl
: Mengakses foto, thumbnail untuk video, atau mendownload byte video secara langsung.coverPhotoBaseUrl
: Mengakses langsung foto sampul untuk album.profilePictureBaseUrl
: Mengakses langsung foto profil pemilikmediaItem
.
URL dasar gambar
Berikut adalah daftar opsi yang dapat Anda gunakan dengan URL dasar gambar:
Parameter | |
---|---|
w , h |
Deskripsi Parameter lebar, Untuk mengakses item media gambar, seperti foto atau thumbnail untuk video, Anda harus menentukan dimensi yang ingin ditampilkan di aplikasi (sehingga gambar dapat diskalakan ke dimensi ini sekaligus mempertahankan rasio aspek). Untuk melakukannya, gabungkan URL dasar dengan dimensi yang diperlukan seperti yang ditunjukkan dalam contoh. Contoh: base-url=wmax-width-hmax-height Berikut adalah contoh untuk menampilkan item media yang tidak lebih lebar dari 2048 piksel dan tidak lebih tinggi dari 1024 piksel: https://lh3.googleusercontent.com/p/AF....VnnY=w2048-h1024 |
c |
Deskripsi Pemangkasan, parameter Jika Anda ingin memangkas gambar ke dimensi lebar dan tinggi
yang tepat yang telah Anda tentukan, gabungkan URL dasar dengan
parameter Ukuran (dalam piksel) harus berada dalam rentang [1, 16383]. Jika lebar atau tinggi gambar melebihi ukuran yang diminta, gambar akan diskalakan ke bawah dan dipangkas (mempertahankan rasio aspek). Contoh: base-url=wmax-width-hmax-height-c Dalam contoh ini, aplikasi menampilkan item media yang lebarnya tepat 256 px dan tingginya 256 px, seperti thumbnail: https://lh3.googleusercontent.com/p/AF....VnnY=w256-h256-c |
d |
Deskripsi Parameter download, Jika Anda ingin mendownload gambar yang mempertahankan semua metadata Exif kecuali metadata lokasi, gabungkan URL dasar dengan parameter Contoh: base-url=d Dalam contoh ini, aplikasi mendownload gambar dengan semua metadata kecuali metadata lokasi: https://lh3.googleusercontent.com/p/Az....XabC=d |
URL dasar video
Berikut adalah daftar opsi yang dapat Anda gunakan dengan URL dasar video:
Parameter | |
---|---|
dv |
Deskripsi Untuk mengakses byte video Parameter dv meminta versi video asli yang ditranskode dan berkualitas tinggi. Parameter ini tidak kompatibel dengan parameter w dan h. URL dasar untuk download video dapat memerlukan waktu hingga beberapa detik untuk menampilkan byte. Sebelum menggunakan parameter ini, pastikan kolom Contoh: base-url=dv Contoh berikut menunjukkan cara mendownload byte video: https://lh3.googleusercontent.com/p/AF....BsdZ=dv |
w , h , c , dan
d |
Deskripsi Untuk mengakses thumbnail video, gunakan salah satu parameter URL dasar gambar. Secara default, semua thumbnail video menyertakan overlay tombol pemutaran. Lihat parameter -no untuk menghapus overlay ini. Contoh: Lihat tabel URL dasar gambar untuk mengetahui contohnya. |
no |
Deskripsi Hapus overlay thumbnail, parameter Jika Anda ingin mengambil thumbnail video tanpa overlay tombol pemutaran, gabungkan URL dasar dengan parameter no. Parameter no harus digunakan dengan setidaknya salah satu parameter URL dasar gambar. Contoh: base-url=wmax-width-hmax-height-no Contoh berikut menampilkan thumbnail video yang lebarnya persis 1280 px dan tingginya 720 px dan tidak menyertakan overlay tombol putar: https://lh3.googleusercontent.com/p/AF....VnnY=w1280-h720-no |
URL dasar foto motion
Foto motion berisi elemen foto dan video. Anda dapat menggunakan parameter dari
URL dasar gambar atau URL dasar
video untuk permintaan baseUrl
foto gerakan.
Parameter | |
---|---|
dv |
Deskripsi Untuk mengambil elemen video dari item media foto gerakan, gunakan
parameter |
w , h , c , dan
d |
Deskripsi Untuk mengambil elemen foto dari item media foto gerakan, gunakan format untuk URL dasar gambar. |