במסמך הזה נסביר איך להשתמש ב-Nearby Search (New) API כדי ליצור פתרון פשוט וחסכוני
חוויית הגילוי המקומי.
בממשק 'גילוי מקומי' מוצגים למשתמשים מקומות מרכזיים ליד מיקום מסוים, כשהם מחפשים מלון או נכס נדל"ן. לרוב הוא מורכב ממפה אינטראקטיבית, עם חלונית נוספת שמכילה בורר מקומות וגלריה של תמונות. תוצג לכם רשימה של מוצרים ויכולות שונים של פלטפורמת מפות Google, שיעזרו לכם לשפר את חוויית השימוש באמצעות אינטראקטיביות.
תרחישים לדוגמה
עכשיו נבין אילו רכיבים של השילוב של הגילוי המקומי תורמים לערך של המשתמשים:
גילוי – הצגת מקומות רלוונטיים מסוגים שונים כדי לתת למשתמשים סקירה כללית של מה שנמצא בסביבת מיקום מסוים.
אינטראקטיביות – מאפשרת למשתמשים לבחור מקום ולרענן את הנתונים באופן דינמי
ביחס למקום הזה.
תצוגה חזותית – פרסום ביקורות על מקומות ותמונות שלהם
וגם את משך ההליכה והמרחק, כדי שהמשתמשים יוכלו להבין במהירות אם המסלול מתאים לצרכים שלהם.
ארכיטקטורה לדוגמה
חיפוש מקומי
יש דרכים רבות ליצור חוויית גילוי מקומי. השילוב הבא הוא דוגמה מותאמת אישית לחוויית משתמש שמשתמשת בממשקי API ידועים של הפלטפורמה של מפות Google, וגם בתכונות חדשות ומלהיבות. אם אתם רוצים להשתמש בתבניות לאיתור מקומי, תוכלו להשתמש ברכיבי אינטרנט.
אפליקציה לדוגמה
הדרכה מפורטת לדוגמה
בטבלה הבאה מפורטת אפליקציית לדוגמה שמחולקת לשלבים, יחד עם תיאור ההטמעה הטכנית באמצעות ממשקי ה-API של פלטפורמת מפות Google.
1. חיפוש מיקום באמצעות השלמה אוטומטית
- טוענים את Maps Javascript API.
- שאילתת השלמה אוטומטית של מקומות או בחירת מיקום במפה.
2. הצגת מוקדי עניין מקומיים באמצעות Nearby Search (New) API
- דירוג לפי פופולריות (תוצאות רלוונטיות יותר) או דירוג לפי מרחק.
includedTypes
,excludedTypes
; אם מדובר במלון, אפשר להחריג את הסוג 'לינה' ולכלול רק סוגים מתאימים, למשל: 'מסעדה, בית קפה, פארק, אתר תיירות'.- כדי לקבל שליטה רבה יותר על התוצאות, תוכלו להשתמש ב-
includedPrimaryTypes
וב-excludedPrimaryTypes
. - 'locationRestriction כדי למנוע מספר לא מספיק של תוצאות או מקומות שנמצאים רחוק מדי. במקרה של אפס תוצאות, צריך להרחיב את גודל העיגול או המלבן לפני הצגת התוצאות.
דוגמה לשאילתה כשמזמינים חדר במלון עם שדות הנתונים המבוקשים:
- בסיסי (
displayName
,types
,openingHours
,formattedAddress
) - יצירת קשר (
websiteUri
,nationalPhoneNumber
,internationalPhoneNumber
) - מועדף (
reviews
,priceLevel
,userRatingCount
)
{ "includedTypes": ["restaurant","cafe","park"], "excludedTypes": ["lodging","convenience_store"], "includedPrimaryTypes": ["restaurant","tourist_attraction","airport"], "excludedPrimaryTypes": ["lodging"], "maxResultCount": 20, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }
דוגמה לשאילתה כשמחפשים נכס נדל"ן עם שדות הנתונים המבוקשים:
- בסיסי (
displayName
,types
,openingHours
,formattedAddress
)
{ "includedTypes": ["school","transport","bus","convenience_store"], "excludedTypes": ["lodging"], "includedPrimaryTypes": ["restaurant","tourist_attraction","airport"], "excludedPrimaryTypes": ["lodging"], "maxResultCount": 20, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }
3. הוספת אינטראקטיביות באמצעות Dynamic Maps and Directions API
- שלבים וקטעים עדכניים באמצעות שאילתה ל-Directions API. * משתמשים בזמן בקטע הבא.
4. הצגת מידע מפורט על המקום במהלך האינטראקציה
תיאור:
displayName
,types
,rating
,userRatingCount
,priceLevel
.Time: מגיע משאילתה קודמת של Directions API.
בדיקות:
reviews[i].author
,reviews[i].rating
,reviews[i].text
.תמונות: במהלך התצוגה המקדימה ללא הגבלות של API לחיפוש בקרבת מקום (הגרסה החדשה), תצטרכו לשלוח שאילתה ל-Places Details עם
place.id
כדי לקבל את הערך photo_reference, ולאחר מכן לשלוח שאילתה לכל תמונה בנפרד.
מספר השאילתות והעלות המשויכת
- Maps JavaScript API: מפה אחת בזמן טעינת חוויית השימוש.
- Places Autocomplete API: שאילתת אחת לכל תו שהקלדתם (אם משתמשים בווידג'ט ההשלמה האוטומטית), אפשר להתאים אישית.
- Nearby Search (New) API: שאילתת חיפוש אחת לכל 20 מקומות שמוצגים. חיוב שונה בהתאם לנתוני המיקום שנכללים בתשובה לשאילתה.
- Directions API: שאילתת API אחת לכל מקום שנבחר על ידי המשתמש.
- Place Photo API: 1 שאילתה לכל תמונה שמוצגת.
סיכום
חוויית חיפוש מקומי היא דרך יעילה לספק ערך למשתמשים. בהטמעה הזו לדוגמה יש תכונות רבות שסביר להניח שתכללו כשיוצרים חוויה כזו בפלטפורמה של מפות Google עם יכולות מיוחדות מ-Nearby Search API (החדש) .
השלבים הבאים
מקורות מידע נוספים:
- רכיבי אינטרנט ב-Maps JavaScript API
- אופטימיזציה של השלמה אוטומטית של מקומות
- שירותים אחרים של Places
- אפשר לשלוח משוב למטה.
תורמים
המחברים הראשיים:
Thomas Anglaret | מהנדס פתרונות בפלטפורמה של מפות Google