סקירה כללית על מיגרציה

מפתחים באזור הכלכלי האירופי (EEA)

במדריך הזה מוסברים ההבדלים העיקריים בין שירות המקומות מהדור הקודם לבין מחלקת המקומות החדשה. השדרוג לסוג המקום מציע יתרונות משמעותיים, כולל שיפור הביצועים ומודל תמחור חדש. כדי להפיק את המרב מה-Places API ולוודא שהאפליקציות שלכם מעודכנות, מומלץ לעיין בשינויים שמפורטים במדריך הזה.

שיטות מומלצות לחיוב במהלך העברה

ההנחיות האלה רלוונטיות אם השימוש שלכם ב-API גבוה מספיק כדי לעבור לרמת תמחור שנייה. כשעוברים לגרסה חדשה יותר של API, החיוב הוא על מק"ט אחר. כדי להימנע מעלויות גבוהות יותר בחודש המעבר, מומלץ לעבור לממשקי ה-API החדשים בסביבת הייצור קרוב ככל האפשר לתחילת החודש. כך תוכלו להגיע לרמות התמחור החודשיות הכי משתלמות במהלך חודש המעבר. למידע על רמות תמחור, אפשר לעיין בדף המחירים ובשאלות הנפוצות בנושא מחירים.

הפעלת Places API

הכיתה Place מסתמכת על שירות Places API. כדי להשתמש בתכונות של המחלקה החדשה Place, צריך קודם להפעיל את Places API (חדש) בפרויקט בענן ב-Google Cloud. מידע נוסף זמין במאמר תחילת העבודה.

שינויים כלליים

בטבלה הבאה מפורטים כמה מההבדלים העיקריים בין PlacesService לבין Place:

‫PlacesService (השיטה הקודמת) Place (חדש)
כדי להשתמש ב-methods, צריך להשתמש בקריאה חוזרת (callback) כדי לטפל באובייקט התוצאות ובתגובה של google.maps.places.PlacesServiceStatus. משתמש ב-Promises, ופועל באופן אסינכרוני.
השיטות דורשות בדיקת PlacesServiceStatus. אין צורך בבדיקת סטטוס, אפשר להשתמש בטיפול רגיל בשגיאות.
שדות הנתונים של המקומות מעוצבים באמצעות קו תחתון בין המילים. שדות הנתונים של המקום מעוצבים בפורמט קאמל קייס.
מוגבל לקבוצה קבועה של סוגי מקומות ושדות נתונים של מקומות. מציע מבחר מורחב של סוגי מקומות ושדות נתונים של מקומות שמתעדכנים באופן קבוע.

שינויים ספציפיים ל-API

הכיתה Place מספקת API לשימוש בספריית המקומות, ותומכת בדפוסי שימוש מודרניים כמו Promises. המחלקות Place חושפות את אותם שדות נתונים של מקומות ואת אותם סוגי מקומות כמו Places Service מדור קודם, וכוללות ערכים חדשים רבים לשדות נתונים של מקומות ולסוגי מקומות.

בטבלה הבאה מוצג המיפוי של התכונות של Places Service לאלה של המחלקה Place:

שירות Places (דור קודם) סיווג מקומות (חדש)
שדות נתונים של מקומות שדות נתונים של סיווג מקומות
סוגי מקומות סוגי מקומות
PlacesService.findPlaceFromQuery() Place.searchByText()
PlacesService.findPlaceFromPhoneNumber() Place.searchByText()
PlacesService.textSearch() Place.searchByText()
PlacesService.nearbySearch() Place.searchNearby()
PlacesService.getDetails() Place.fetchFields()
Places.AutocompletionRequest Places.AutocompleteRequest
Places.AutocompletePrediction Places.PlacePrediction
כיתה Autocomplete כיתה PlaceAutocompleteElement
כיתה SearchBox ---

טעינה של ספריית המקומות

האופן שבו האפליקציה טוענת את ספריית המקומות תלוי ברכיב הטעינה להפעלת ה-API שבו משתמשים. אם האפליקציה משתמשת בייבוא דינמי של ספריות, אפשר לטעון את הספריות הנדרשות בזמן הריצה באמצעות האופרטור await כדי להפעיל את importLibrary(), כמו שמוצג כאן:

const { Place } = await google.maps.importLibrary("places");

אם האפליקציה משתמשת בתג לטעינה ישירה של סקריפט, צריך לבקש את הספרייה places בסקריפט הטעינה:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>

מידע נוסף על טעינת Maps JavaScript API

בקטע הזה מופיעים מדריכים שיעזרו לכם להעביר את האפליקציות שלכם לשימוש בגרסה העדכנית של Places API: