Kullanıcılar ambiyans cihazlarını yapılandırdıktan ve Google Fotoğraflar'da medya kaynaklarını seçtikten sonra uygulamanız, bu medya öğelerini listeleyip görüntülemek için alabilir.
Başlamadan önce
- Cihaz kurulumunu kontrol edin: Kullanıcı için bir cihaz oluşturup yapılandırdığınızdan emin olun.
- Ambient API akışını anlama: Genel süreci, özellikle de
mediaSourcesSetiçin anket yapma adımını anlamak üzere Ambient API akışını inceleyin.
mediaSourcesSet için anket
Bir cihazın medya öğelerini listelemeden önce kullanıcının, Google Fotoğraflar uygulamasında uygulamanızla paylaşmak istediği fotoğrafları seçmesi gerekir. Uygulamanız, bu seçimin ne zaman yapıldığını belirlemek için cihazı yoklamalıdır.
Belirli bir deviceId için devices.get yöntemini düzenli olarak çağırın. AmbientDevice yanıtındaki mediaSourcesSet alanını izleyin. Başlangıçta false olacaktır. Kullanıcı medya kaynaklarını başarıyla seçtikten sonra bu alan true olarak değişir.
AmbientDevice yanıtı, anket sıklık kılavuzu olarak kullanmanız gereken bir pollInterval içeren bir pollingConfig içerir.
Medya Öğelerini Listeleme
Bir cihaz için mediaSourcesSet true olduğunda, kullanıcı tarafından seçilen medya öğelerini getirmeye başlayabilirsiniz.
mediaItems.listuç noktasını kullanın: YoldadeviceId'yi sağlayarakhttps://photosambient.googleapis.com/v1/mediaItemsiçin bir GET isteği gönderin.Sayfalandırmayı ele alın (gerekirse): Yanıt sayfalara bölünmüş olabilir. Döndürülecek maksimum öğe sayısını belirtmek için
pageSizeparametresini, sonraki sonuç sayfalarını almak için önceki bir yanıttakipageTokenparametresini kullanın.Medya öğelerini işleme: Yanıt, her biri seçili bir medya öğesini temsil eden bir
AmbientMediaItemnesne dizisi içerir. Bu nesneler aşağıdakiler gibi temel ayrıntıları içerir:id: Medya öğesinin benzersiz tanımlayıcısı.creationTime: Medya öğesinin oluşturulduğu zaman damgası.mediaFile: Gerçek içeriğe erişmek için ayrıntıları içeren bir nesne.
mediaFile alanı baseUrl değerini içerir. Bu baseUrl, medya öğesinin içeriğine çeşitli çözünürlüklerde veya biçimlerde erişmek için URL oluşturmak amacıyla kullanacağınız değerdir.
Temel URL'ler
Google Fotoğraflar API'lerindeki temel URL'ler, medya öğelerinin ham baytlarına erişim sağlar. Böylece uygulamanız bu öğeleri indirebilir veya görüntüleyebilir. Bu URL'ler, albümler listelenirken (Library API) veya medya öğelerine erişilirken (hem Library hem de Picker API'leri) yanıtlara dahil edilir. Ana URL'lerin düzgün çalışması için ek parametrelere ihtiyaç duyduğunu unutmayın.
Picker API için:
Tüm PickedMediaItem.mediaFile
nesneleri bir baseUrl içerir.
Temel URL'ler 60 dakika boyunca etkin kalır ancak kullanıcı Google Hesabı ayarlarından uygulamanızın izinlerini iptal ederse daha erken sona erebilir.
Library API için:
Temel URL'ler 60 dakika boyunca etkin kalır.
Çeşitli temel URL'ler şunlardır:
baseUrl: Fotoğrafa, videonun küçük resmine doğrudan erişebilir veya video baytlarını indirebilirsiniz.coverPhotoBaseUrl: Albümün kapak fotoğrafına doğrudan erişebilirsiniz.profilePictureBaseUrl:mediaItemsahibinin profil fotoğrafına doğrudan erişme
Resim temel URL'leri
Resim ana URL'leriyle kullanabileceğiniz seçeneklerin listesi aşağıda verilmiştir:
| Parametre | |
|---|---|
w, h |
Açıklama Genişlik ( Fotoğraf veya video küçük resmi gibi bir resim medya öğesine erişmek için uygulamanızda görüntülemeyi planladığınız boyutları belirtmeniz gerekir (böylece resim, en boy oranı korunarak bu boyutlara ölçeklendirilebilir). Bunun için temel URL'yi, örneklerde gösterildiği gibi gerekli boyutlarınızla birleştirin. Örnekler: base-url=wmax-width-hmax-height 2048 pikselden geniş ve 1024 pikselden yüksek olmayan bir medya öğesi göstermek için aşağıdaki örnekten yararlanabilirsiniz: https://lh3.googleusercontent.com/p/AF....VnnY=w2048-h1024 |
c |
Açıklama Kırpma, Resmi, belirttiğiniz tam genişlik ve yükseklik boyutlarına göre kırpmak istiyorsanız temel URL'yi zorunlu Boyut (piksel cinsinden), [1, 16383] aralığında olmalıdır. Resmin genişliği veya yüksekliği istenen boyutu aşarsa resim küçültülür ve kırpılır (en boy oranı korunur). Örnekler: base-url=wmax-width-hmax-height-c Bu örnekte uygulama, tam olarak 256 piksel genişliğinde ve 256 piksel yüksekliğinde bir medya öğesi (ör. küçük resim) gösterir: https://lh3.googleusercontent.com/p/AF....VnnY=w256-h256-c |
d |
Açıklama İndirme, Resmi, konum meta verileri dışındaki tüm Exif meta verilerini koruyarak indirmek istiyorsanız temel URL'yi Örnekler: base-url=d Bu örnekte uygulama, konum meta verileri dışındaki tüm meta verileri içeren bir resim indirir: https://lh3.googleusercontent.com/p/Az....XabC=d |
Video temel URL'leri
Video ana URL'leriyle kullanabileceğiniz seçeneklerin listesi aşağıda verilmiştir:
| Parametre | |
|---|---|
dv |
Açıklama Bir videonun dv parametresi, orijinal videonun yüksek kaliteli, kod dönüştürülmüş bir sürümünü ister. Parametre, w ve h parametreleriyle uyumlu değildir. Video indirmelerinin temel URL'lerinin bayt döndürmesi birkaç saniye sürebilir. Bu parametreyi kullanmadan önce medya öğelerinin Örnekler: base-url=dv Aşağıdaki örnekte, bir videonun baytlarının nasıl indirileceği gösterilmektedir: https://lh3.googleusercontent.com/p/AF....BsdZ=dv |
w, h, c ve
d |
Açıklama Videonun küçük resmine erişmek için resim temel URL parametrelerinden herhangi birini kullanın. Varsayılan olarak tüm video küçük resimlerinde bir oynatma düğmesi yer paylaşımı bulunur. Bu yer paylaşımını kaldırmak için -no parametresine bakın. Örnekler: Örnekler için resim temel URL'leri tablosuna bakın. |
no |
Açıklama Küçük resim yer paylaşımını kaldır Bir videonun küçük resmini oynatma düğmesi yer paylaşımı olmadan almak istiyorsanız temel URL'yi no parametresiyle birleştirin. no parametresi, resim taban URL parametrelerinden en az biri ile kullanılmalıdır. Örnekler: base-url=wmax-width-hmax-height-no Aşağıdaki örnekte, tam olarak 1.280 piksel genişliğinde ve 720 piksel yüksekliğinde olan ve oynatma düğmesi yer almayan bir video küçük resmi gösterilmektedir: https://lh3.googleusercontent.com/p/AF....VnnY=w1280-h720-no |
Hareketli fotoğraf temel URL'leri
Hareketli fotoğraflar hem fotoğraf hem de video öğeleri içerir. Hareketli fotoğraf baseUrl istekleri için resim temel URL'lerinden veya video temel URL'lerinden parametreler kullanabilirsiniz.
| Parametre | |
|---|---|
dv |
Açıklama Hareketli fotoğraf medya öğesinin video öğesini almak için video temel URL'lerinden indirirken kullandığınız |
w, h, c ve
d |
Açıklama Hareketli fotoğraf medya öğesinin fotoğraf öğesini almak için resim temel URL'leri biçimini kullanın. |
Sonraki Adımlar
- Örnek Uygulama: Örnek uygulamamızda medya öğelerinin listelenip alınmasıyla ilgili bir örnek bulunmaktadır. Daha fazla bilgi için
checkMediaSourcesSetvefetch_media_item_listişlevlerine göz atın. - Referans Dokümanları: Mevcut tüm yöntemler, istek ve yanıt parametreleri ve hata kodları hakkında ayrıntılı bilgi için medya öğeleriyle ilgili kapsamlı referans dokümanlarını inceleyin.