רקע
עכשיו אפשר לעדכן אובייקטים ומחלקות כדי לכלול מודולים של הזדמנויות להוספת ערך. המודולים יוצגו בדף הפרטים ויכולים לקשר לתוכן של המנפיק. במאמר הזה מוסבר איך להפעיל מודולים ולהשתמש בהם באמצעות Google Wallet API.
דוגמה לתכונה
|
|
| תצוגה יחידה | תצוגת רשימה |
במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם מכירים את המושגים הבסיסיים של Google Wallet ושכבר השלמתם את הדרישות המוקדמות המומלצות. אפשר לשלוח שאלות או משוב לאיש הקשר ב-Google Wallet.
שלבי ההטמעה
כדי להוסיף מודול חדש, צריך לעדכן את האובייקט או את המחלקה כדי לכלול את ValueAddedModuleData. השדה ValueAddedModuleData כולל את השדות הבאים:
[חובה] כותרת LocalizedString
הכותרת שמוצגת במודול. מגבלת התווים היא 60, ומחרוזות ארוכות יותר ייקטעו.
גוף המחרוזת המותאמת לשוק המקומי
הגוף שמוצג במודול. מגבלת התווים היא 50, ומחרוזות ארוכות יותר ייקטעו.
תמונה של תמונה
התמונה שמוצגת במודול. יחס הגובה-רוחב המומלץ לתמונות הוא 1:1, והמערכת תשנה את גודל התמונות כדי שיתאים ליחס הזה.
[חובה] מחרוזת uri
ה-URI שאליו מוביל המודול כשלוחצים עליו. אפשר להזין כאן קישור לדף אינטרנט אחר או קישור עומק.ModuleViewConstraints viewConstraints
אילוצים שצריך לעמוד בהם כדי שהמודול יוצג. ל-ModuleViewConstraints יש את השדה הבא:TimeInterval displayInterval
פרק הזמן שבו המודול יוצג למשתמשים. אפשר להגדיר גם `startTime` וגם `endTime`. המודול מוצג מיד אחרי ההוספה, אלא אם מוגדר `startTime`. המודול מוצג ללא הגבלת זמן אם לא מוגדר `endTime`.int32 sortIndex
האינדקס למיון המודולים. מודולים עם אינדקס מיון נמוך מוצגים לפני מודולים עם אינדקס מיון גבוה. אם לא מציינים ערך, המערכת מניחה שמדובר באינדקס המיון INT_MAX. אם יש שני מודולים עם אותו אינדקס, התנהגות המיון לא מוגדרת.דוגמה ל-ValueAddedModuleData:
{
"valueAddedModuleData": [
{
"header": {
"defaultValue": {
"language": "en-US",
"value": "10% off merch"
}
},
"body": {
"defaultValue": {
"language": "en-US",
"value": "Shirts, caps, mugs, and more"
}
},
"image": {
"sourceUri": {
"uri": "http://www.images.google.com/opportunity"
}
},
"uri": "http://www.google.com/opportunity",
"viewConstraints": {
"displayInterval": {
"start": {
"date": "2024-08-01T18:30:00"
},
"end": {
"date": "2025-08-01T18:30:00"
}
}
},
"sortIndex": 0
},
{
"header": {
"defaultValue": {
"language": "en-US",
"value": "10% off concessions"
}
},
"uri": "http://www.google.com/new_opportunity"
}
]
}התנהגות צפויה
אחרי שתעדכנו בהצלחה את האובייקט או את הכרטיס, תראו מודולים בכרטיס המתאים. אם הוספתם רק מודול אחד, הוא יופיע בחלק הקדמי של הכרטיס.
הנחיות לגבי מודולים של הזדמנויות להוספת ערך
מודולים הם הזדמנויות להוסיף פעולות שישפרו את חוויית השימוש בכרטיס. כשיוצרים ומנהלים את המודולים, כדאי להתייחס לנקודות הבאות:
- צריך להגדיר את המודולים בשפה מתאימה כדי לציין שהם ניתנים להפעלה, וכך לעזור למשתמשים להבין שאפשר ללחוץ על המודולים האלה.
- צריך להגדיר מודולים עם תמונות מתאימות שקשורות למודול הספציפי.
- אתם שולטים במודולים, וכדאי לנהל באופן יזום את סדר העדיפויות של המודולים בהתאם לחשיבות ולרלוונטיות שלהם.
- צריך להציג למשתמשים רק מודולים פעילים. כדי לקבוע את זה, אפשר להגדיר את displayInterval במודול או להוסיף אותו באופן יזום למחלקה או לאובייקט או להסיר אותו מהם.
טיפול בחריגים
| Message | סיבה |
|---|---|
| המאפיין ValueAddedModuleData חייב להכיל כותרת. | ל-ValueAddedModuleData אין כותרת. |
| השדה ValueAddedModuleData חייב להכיל URI לא ריק. | ל-ValueAddedModuleData אין URI לא ריק. |
| אפשר להוסיף עד 15 מודולים של ערך מוסף לכל כרטיס. | צריך לצמצם את מספר המודולים עם הערך המוסף בכיתה. |
| אפשר להוסיף עד 15 מודולים של ערך מוסף לכל אובייקט. | צריך לצמצם את מספר המודולים של ערך מוסף באובייקט. |