Medya öğelerini listele ve al

Kullanıcı, Picker API'yi kullanarak medya öğeleri seçtikten sonra bu öğeler hakkında bilgi edinebilir ve içeriklerine erişebilirsiniz. Bu kılavuzda, medya öğelerini listeleme ve alma süreci özetlenmiştir.

Başlamadan önce

  • Akış hakkında bilgi edinin: Fotoğraf seçim sürecinin tamamına genel bir bakış için Picker API'yi kullanmaya başlama başlıklı makaleyi inceleyin.
  • Medya öğesi seçimini tamamlama: Kullanıcının oturumunda medya öğelerini başarıyla seçtiğinden emin olun. Daha fazla bilgi için oturumlarla ilgili kılavuzu inceleyin.
  • Zorunlu yetkilendirme kapsamlarını inceleyin: Oturumlarla çalışmak için photospicker.mediaitems.readonly kapsamı gerekir. Kapsamlar hakkında daha fazla bilgi için Yetkilendirme kapsamları başlıklı makaleyi inceleyin.

Seçilen medya öğelerini listeleme

  1. mediaItems.list uç noktasını kullanın: https://photospicker.googleapis.com/v1/mediaItems adresine GET isteği gönderin ve sessionId parametresini sorgu parametresi olarak ekleyin.

  2. Sayfalandırma işlemini tamamlayın (gerekirse):

    Kullanıcı çok sayıda öğe seçerse yanıt sayfalara bölünebilir. Sonuçların sonraki sayfalarını almak için yanıtta nextPageToken öğesini kullanın.

  3. Medya öğelerini işleme: Yanıt, her biri seçili bir medya öğesini temsil eden bir PickedMediaItem nesnesi dizisi içerir. Bu nesneler, aşağıdakiler gibi önemli ayrıntıları içerir:

    • id: Medya öğesinin benzersiz tanımlayıcısı.
    • baseUrl: Medya öğesinin içeriğine çeşitli çözünürlüklerde erişmek için URL'ler oluşturabileceğiniz temel URL.
    • mimeType: Medya öğesinin MIME türü (ör. resim/jpeg, video/mp4).

Seçilen medya öğelerini al

İsteklerinizin yetkilendirilmesi için https://www.googleapis.com/auth/photospicker.mediaitems.readonly kapsamına sahip geçerli bir OAuth 2.0 erişim jetonunuz olduğundan emin olun.

  • İçerik URL'sini oluşturma: PickedMediaItem nesnesinden baseUrl öğesini kullanın. Çözünürlüğü veya dosya biçimini baseUrl'ye ekleyin. Daha fazla bilgi için temel URL'lerle ilgili bölüme bakın.

  • İçeriği getirme: Medya öğesinin temel URL'sine bir GET isteği gönderin. Yanıt, medya öğesinin (resim veya video) baytlarını içerir. Çeşitli baseURL seçenekleri mevcuttur.

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 (Kitaplık API'si) veya medya öğelerine erişilirken (hem Kitaplık hem de Seçici 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:

Ana 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şin.
  • profilePictureBaseUrl: mediaItem sahibinin 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 (w) ve yükseklik (h) parametreleri.

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 örneği inceleyin:

https://lh3.googleusercontent.com/p/AF....VnnY=w2048-h1024
c

Açıklama

Kırpma, c parametresi.

Resmi, belirttiğiniz tam genişlik ve yükseklik boyutlarına göre kırpmak istiyorsanız temel URL'yi zorunlu w ve h parametreleriyle birlikte isteğe bağlı -c parametresiyle birleştirin.

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 en boy oranı korunarak kırpılır.

Ö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, d parametresi.

Resmi, konum meta verileri dışındaki tüm Exif meta verilerini koruyarak indirmek istiyorsanız temel URL'yi d parametresiyle birleştirin.

Ö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

mediaItem videosunun baytlarına erişmek için baseUrl öğesini indirilen video dv parametresiyle birleştirin.

dv parametresi, orijinal videonun yüksek kaliteli ve kod dönüştürmeli 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 mediaMetadata.status alanının READY olduğundan emin olun. Aksi takdirde, medya öğenizin işlenmesi tamamlanmadıysa hata alabilirsiniz.

Ö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 no parametresi.

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 temel URL parametrelerinden en az biri ile kullanılmalıdır.

Örnekler:

base-url=wmax-width-hmax-height-no

Aşağıdaki örnekte, oynatma düğmesi yer paylaşımı içermeyen ve tam olarak 1.280 piksel genişliğinde ve 720 piksel yüksekliğinde 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 dv parametresini video ana URL'lerinden indirirken kullandığınız gibi kullanın.

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.