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ı Uygulamanızı yapılandırma başlıklı makalede bulabilirsiniz.
  • 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.
  • 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.

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 seçme yaşam döngüsünü yönetmek için oturumları kullanabilirsiniz.

  1. Kullanıcının medya öğeleri seçebilmesi 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 listeleme ve alma.
  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 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, bir oturumu kaldırır. Bu işlev genellikle kullanıcı medya seçmeyi bitirdikten sonra veya oturum zaman aşımına uğradığında temizlik için kullanılır.

Kullanıcı medya öğeleri seçtikten ve uygulamanız medya öğesi baytlarını aldıktan sonra oturumları silmeniz önerilir.

Örnek anket akışı

Bu örnekte, oturum oluşturma ve anket yapma gösterilmektedir. Kullanıcınızın kimliğini 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 tarayabileceği 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. Değer true ise seçili medya öğelerini listeleyebilirsiniz.
      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 değerine ulaşılırsa zaman aşımını uygun şekilde ele alın.