סשנים הם הלב של Picker API, ומספקים גישה מאובטחת ומבוקרת לאפשר למשתמשים לבחור תמונות ואלבומים מספריית Google Photos שלהם. הזה מדריך שמסביר איך ליצור, לנהל ולבצע סקרים ביעילות, כדי לאפשר לבחירת תמונות בצורה חלקה באפליקציה.
לפני שמתחילים
- הגדרת האפליקציה: מפעילים את ה-API ומגדירים אימות. צפייה כדי לקבל מידע מפורט, מגדירים את האפליקציה לבצע מיליון שלבים.
- הבנת התהליך: עיינו במאמר תחילת העבודה עם Picker API כדי לקבל סקירה כללית על התהליך המלא של בחירת התמונות.
- לבדוק את היקפי ההרשאות הנדרשים: כדי לעבוד עם סשנים, אתם צריכים
היקף הרשאות
photospicker.mediaitems.readonly
. כדי לקבל מידע נוסף על היקפים, למידע על היקפי הרשאות
מחזור חיים של סשן
Picker API מספק שיטות ליצירה ולאחזור מידע למחוק סשנים. אחרי אימות המשתמשים, תוכלו להשתמש בסשנים כדי לנהל את מחזור החיים של בחירת התמונות.
- יוצרים סשן כדי לאפשר למשתמש לבחור פריטי מדיה.
- לסקר את הסשן כדי לבדוק מתי המשתמש הסתיים בחירת קובצי המדיה.
- הצגת רשימה של פריטי המדיה ואחזור שלהם
- כדי לנקות את הסשן, אפשר למחוק אותו.
יצירת סשנים
כדאי ליצור סשן כדי שהמשתמשים יוכלו לבחור תמונות באופן מאובטח ישירות מ- באפליקציית Google Photos ולשתף אותם עם האפליקציה.
sessions.create
יוצר סשן חדש ומחזיר ערך pickerUri
ייחודי שאפשר להציג למשתמשים. הסשן נשאר פעיל עד שהמשתמש
בחר בהצלחה פריטי מדיה, או שתם הזמן הקצוב של הסשן.
מגבלות של פעילות באתר
חשוב לשים לב למגבלות על סשנים. Picker API אוכף מגבלות על מספר כדי להבטיח שימוש אחראי ולמנוע ניצול לרעה. מתחת בנסיבות רגילות, סביר להניח שלא תגיעו למגבלות האלה. עם זאת, כדאי לעקוב אחר סשנים ולנקות סשנים באופן יזום כדי למנוע בעיות נפוצות.
סקרים ומעקב אחר סשנים
לאחר יצירת סשן, כדאי לבדוק מדי פעם את נקודת הקצה (endpoint) sessions.get
כדי לקבל
הסטטוס של סשן. המאפיין mediaItemsSet
בתשובה מוחזר
true
כשהמשתמש ישלים את הבחירה.
חשוב להשתמש בסקרים יעילים. התשובה sessions.get
כוללת את
אובייקט pollingConfig
. היעזרו בשדות הבאים כדי להימנע
לשיחות ויצירת חוויית משתמש חלקה:
pollInterval
: מרווחי הצבעה אופטימלייםtimeoutIn
: משך הזמן הקצוב לתפוגה
לפרטים נוספים, ראו תהליך דגימה לדוגמה.
מחיקה וניקוי של סשנים
sessions.delete
מסיר סשן, בדרך כלל משמש לניקוי אחרי המשתמש
סיים לבחור מדיה או אם פג הזמן הקצוב של הסשן.
מומלץ למחוק סשנים אחרי שהמשתמש בוחר פריטי מדיה והאפליקציה שלך אחזרה את פריט המדיה בייטים.
דוגמה לתהליך של סקרים
זוהי דוגמה ליצירה של סשן ובדיקה שלו. לאחר האימות הראשון שלך, עליך ליצור סשן חדש.
- יצירת סשן: כדי להתחיל סשן חדש, צריך להתקשר למספר
sessions.create
מקבלים אתpickerUri
. - מציגים את
pickerUri
למשתמש: מציגים את כתובת ה-URL או יוצרים קוד QR שהמשתמש יוכל לסרוק. - סקרו את הסשן:
- יש להשתמש ב-polyInterval המומלץ מתוך
pollingConfig
. - צריך לבדוק אם הערך של
mediaItemsSet
הוא True.- אם
true
, ממשיכים להציג את קובצי המדיה שנבחרו. - אם הערך הוא
false
, אפשר להמשיך את ההצבעה עד להגעה אלtimeoutIn
.
- אם
- מומלץ לטפל בזמן קצוב לתפוגה ובביטולים.
- יש להשתמש ב-polyInterval המומלץ מתוך
GET https://photoslibrary.googleapis.com/v1/sessions/{sessionId}
זוהי דוגמה לתשובה:
{
"id": string,
"pickerUri": string,
"pollingConfig": {
object (PollingConfig)
},
"mediaItemsSet": boolean
}
מציגים את pickerUri
למשתמש ומתחילים לבדוק את הסשן.
בודקים את התשובה לדברים הבאים:
mediaItemsSet
: הערך true אם המשתמש סיים לבחור פריטים של מדיהpollingConfig.pollInterval
: זמן המתנה מומלץ לפני הסקר הבאpollingConfig.timeoutIn
: זמן המתנה כולל לפני זמן קצוב לתפוגה
אם הערך של mediaItemsSet
הוא false ולא הגעתם ל-timeoutIn
, צריך להמתין ל-pollInterval
ואז לבצע שוב את הסקרים.
אם הערך של mediaItemsSet
הוא True, ממשיכים להציג את רשימת פריטי המדיה שנבחרו.
אם מגיעים ל-timeoutIn
, מטפלים בזמן הקצוב לתפוגה בצורה תקינה.