Setelah pengguna mengonfigurasi perangkat standby dan memilih sumber media di Google Foto, aplikasi Anda dapat mencantumkan dan mengambil item media tersebut untuk ditampilkan.
Sebelum memulai
- Periksa penyiapan perangkat: Pastikan Anda telah berhasil membuat dan mengonfigurasi perangkat untuk pengguna.
- Memahami alur Ambient API: Tinjau
Alur Ambient API untuk memahami
proses secara keseluruhan, terutama langkah yang melibatkan polling untuk
mediaSourcesSet.
Polling untuk mediaSourcesSet
Sebelum Anda dapat mencantumkan item media untuk perangkat, pengguna harus memilih foto yang ingin dibagikan ke aplikasi Anda dalam aplikasi Google Foto. Aplikasi Anda harus melakukan polling pada perangkat untuk menentukan kapan pemilihan ini telah dibuat.
Panggil metode devices.get
secara berkala untuk deviceId tertentu. Pantau kolom mediaSourcesSet dalam
respons AmbientDevice. Awalnya, nilainya adalah false. Setelah pengguna berhasil memilih sumber media, kolom ini akan berubah menjadi true.
Respons AmbientDevice menyertakan pollingConfig dengan pollInterval
yang harus Anda gunakan sebagai panduan untuk frekuensi polling.
Mencantumkan Item Media
Setelah mediaSourcesSet menjadi true untuk perangkat, Anda dapat mulai mengambil item
media yang dipilih oleh pengguna.
Gunakan endpoint
mediaItems.list: Buat permintaan GET kehttps://photosambient.googleapis.com/v1/mediaItems, yang memberikandeviceIddi jalur.Menangani penomoran halaman (jika perlu): Respons mungkin diberi nomor halaman. Gunakan parameter
pageSizeuntuk menentukan jumlah maksimum item yang akan ditampilkan, danpageTokendari respons sebelumnya untuk mengambil halaman hasil berikutnya.Memproses item media: Respons akan berisi array objek
AmbientMediaItem, yang masing-masing mewakili item media yang dipilih. Objek ini mencakup detail penting seperti:id: ID unik untuk item media.creationTime: Stempel waktu saat item media dibuat.mediaFile: Objek yang berisi detail untuk mengakses konten sebenarnya.
Kolom mediaFile menyertakan baseUrl. baseUrl ini adalah yang akan Anda
gunakan untuk membuat URL guna mengakses konten item media dalam berbagai
resolusi atau format.
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 API 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 (menjaga 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 piksel dan tingginya 720 piksel dan tidak menyertakan overlay tombol pemutaran: 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. |
Langkah Berikutnya
- Contoh Aplikasi: Contoh aplikasi kami
menyertakan contoh listingan dan pengambilan item media. Lihat fungsi
checkMediaSourcesSetdanfetch_media_item_listuntuk mengetahui informasi selengkapnya. - Dokumentasi Referensi: Tinjau dokumen referensi tentang item media yang komprehensif untuk mengetahui informasi mendetail tentang semua metode, parameter permintaan dan respons, serta kode error yang tersedia.