Oturum oluşturma ve yönetme

Oturumlar, Picker API'nin merkezinde yer alır ve kullanıcıların Google Fotoğraflar kitaplıklarından fotoğraf ve video seçmeleri için güvenli ve kontrollü bir yol sunar. Bu kılavuzda, uygulamanızda sorunsuz bir fotoğraf seçimi sağlamak için oturumların nasıl oluşturulacağı, yönetileceği ve etkili bir şekilde ankete tabi tutulacağı açıklanmaktadır.

Başlamadan önce

  • Uygulamanızı yapılandırın: API'yi etkinleştirin ve kimlik doğrulamayı ayarlayın. Ayrıntılı adımlar için Uygulamanızı yapılandırma bölümüne bakın.
  • Akışı anlama: Fotoğraf seçme işleminin tamamına genel bir bakış için Picker API'yi kullanmaya başlama başlıklı makaleyi inceleyin.
  • Gerekli yetkilendirme kapsamlarını inceleme: Oturumlarla çalışmak için photospicker.mediaitems.readonly kapsamı gerekir. Kapsamlar hakkında daha fazla bilgi için Yetkilendirme kapsamları bölümüne bakın.

Oturum yaşam döngüsü

Seçici API, oturum oluşturma, oturumlarla ilgili bilgi alma ve oturumları silme yöntemleri sağlar. Kullanıcılarınızın kimliğini doğruladıktan sonra fotoğraf toplama yaşam döngüsünü yönetmek için oturumları kullanabilirsiniz.

  1. Bir kullanıcının medya öğelerini seçmesini sağlamak için oturum oluşturun.
  2. Kullanıcının medya öğelerini seçmeyi ne zaman bitirdiğini kontrol etmek için oturumu yoklayın.
  3. Medya öğelerini listeleyin ve alın.
  4. Silme işlemiyle oturumu temizleyin.

Oturum oluşturma

Kullanıcılarınızın doğrudan Google Fotoğraflar uygulamalarından güvenli bir şekilde fotoğraf seçip bunları uygulamanıza geri paylaşabilmesi için bir oturum oluşturun.

sessions.create, yeni bir oturum oluşturur ve kullanıcılarınıza sunabileceğiniz benzersiz bir pickerUri değeri döndürür. Oturum, kullanıcı medya öğelerini başarıyla seçene veya oturum zaman aşımına uğrayana kadar etkin kalır.

Oturum sınırları

Oturum sınırlamalarına dikkat edin. Picker API, sorumlu bir kullanım sağlamak ve kötüye kullanımı önlemek için oluşturabileceğiniz oturum sayısıyla ilgili sınırlar uygular. Normal koşullarda bu sınırlara ulaşma olasılığınız düşüktür. Ancak herhangi bir sorun yaşamamak için oturumları takip edip proaktif olarak temizlemeniz gerekir.

Oturumları anket ve izleme

Bir oturum oluşturulduktan sonra, oturumun durumunu öğrenmek için sessions.get uç noktasını düzenli olarak yoklayın. Kullanıcı seçimini tamamladığında yanıttaki mediaItemsSet mülkü true değerini döndürür.

Etkili anketler kullandığınızdan emin olun. sessions.get yanıtı, pollingConfig nesnesini içerir. Gereksiz aramalardan kaçınmanıza ve sorunsuz bir kullanıcı deneyimi oluşturmanıza yardımcı olması için aşağıdaki alanları kullanın:

  • pollInterval: optimum anket aralıkları
  • timeoutIn: zaman aşımı süresi

Daha fazla bilgi için Örnek anket akışı bölümüne bakın.

Oturumları silme ve temizleme

sessions.delete, genellikle kullanıcı medya seçmeyi bitirdikten sonra veya oturum zaman aşımına uğradığında temizlik için kullanılan bir oturumu kaldırır.

Kullanıcı medya öğelerini seçtikten ve uygulamanız medya öğesi baytlarını aldıktan sonra oturumları silmek en iyi uygulamadır.

Örnek anket akışı

Bu, oturum oluşturma ve yoklama örneğidir. Kullanıcınızın kimliğini ilk kez doğruladıktan sonra yeni bir oturum oluşturun.

  1. Oturum oluşturma: Yeni bir oturum başlatmak ve pickerUri almak için sessions.create'yi arayın.
  2. pickerUri'yi kullanıcıya gösterin: URL'yi gösterin veya kullanıcının taraması için bir QR kodu oluşturun. Kullanıcı seçim deneyimine genel bir bakış
  3. Oturumda anket yapın:
    1. pollingConfig'teki önerilen pollInterval değerini kullanın.
    2. mediaItemsSet değerinin doğru olup olmadığını kontrol edin.
      1. true ise seçilen medya öğelerini listelemeye devam edin.
      2. Değer false ise timeoutIn değerine ulaşılana kadar anket yapmaya devam edin.
    3. Zaman aşımlarını ve iptalleri sorunsuz şekilde yönetin.
GET https://photoslibrary.googleapis.com/v1/sessions/{sessionId}

Aşağıda örnek bir yanıt verilmiştir:

{
  "id": string,
  "pickerUri": string,
  "pollingConfig": {
    object (PollingConfig)
  },
  "mediaItemsSet": boolean
}

pickerUri'ü kullanıcıya gösterin ve ardından oturumu anketlemeye başlayın.

Yanıtı aşağıdakiler açısından kontrol edin:

  • mediaItemsSet: Kullanıcı medya öğelerini seçmeyi tamamladıysa doğru değerini döndürür.
  • pollingConfig.pollInterval: Sonraki ankete geçmeden önce beklemeniz önerilen süre
  • pollingConfig.timeoutIn: Zaman aşımı yaşanmadan önce beklemeniz gereken toplam süre

mediaItemsSet yanlışsa ve timeoutIn değerine ulaşılmadıysa pollInterval değerini bekleyin ve ardından tekrar anket yapın.

mediaItemsSet doğruysa seçili medya öğelerini listeleyebilirsiniz.

timeoutIn e-posta adresine ulaşılırsa zaman aşımını sorunsuz bir şekilde giderin.