שאלות נפוצות בנושא קידוד גיאוגרפי

כאן נענה על שאלות ספציפיות לגבי Geocoding API. שאלות נפוצות על הפלטפורמה של מפות Google מומלץ לקרוא גם את המאמר שיטות מומלצות ליצירת קואורדינטות של כתובות.

פתרון בעיות

פתרון בעיות

אני מקבל יותר שאילתות שמחזירות את הערך ZERO_RESULTS באמצעות המקודד הגיאוגרפי. מה הבעיה?

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

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

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

אני צריך תשובות מהירות, והמקודד הגיאוגרפי איטי מדי לאפליקציה שלי. איך אפשר לשלוח תשובות מהר יותר?

אנחנו ממליצים לאפליקציות שמגיבות להזנת משתמשים, ולכן רגישות מאוד לזמן אחזור, להשתמש בתכונה Place Autocomplete ב-Places API (זמינה גם ב-JavaScript, ב-Android או ב-iOS) במקום לבצע גיאוקודינג של כתובות. השלמה אוטומטית למקומות עברה אופטימיזציה לשימוש אינטראקטיבי, ולכן זמן האחזור שלה נמוך מאוד.

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

איך אפשר לצמצם את זמן האחזור ב-Directions API וב-Distance Matrix API?

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

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

איך מדווחים על באגים במקודד הגיאוגרפיות?

אם יש לכם דיווחים על באגים או בקשות לתכונות לגבי שירות המקודד הגיאוגרפית להעברה, תוכלו לשלוח אותם אלינו באמצעות הכלי הציבורי למעקב אחר בעיות.

המקודד הגיאוגרפי לא מניב תוצאות טובות בתרחיש לדוגמה שלי. אילו סוגי עזרה זמינים?

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

איך מקבלים את התוצאות הטובות ביותר מהמקודד הגיאוגרפי באמצעות סינון רכיבים?

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

  • כדי להגביל את המיקוד למדינה ספציפית, חשוב לציין את הגבלת המדינה באמצעות קוד מדינה לפי תקן ISO 3166-2. לדוגמה: components=country:CH|postal_code:8000 מחזירה את הערך '8000 Zürich, Switzerland'.
    https://maps.googleapis.com/maps/api/geocode/json?components=country:CH%7Cpostal_code:8000&key=YOUR_API_KEY
  • כדי להגביל שאילתות למדינה ספציפית, חשוב לציין את הגבלת המדינה באמצעות קוד מדינה לפי תקן ISO 3166-2. לא בטוח ששמות של מדינות וקיצורים אחרים יניבו את אותן תוצאות כמו קודי המדינות.

    דוגמאות:

    • מערכת הגיאוקוד של components=country:FRA|locality:gallus מחזירה את קטגוריית המשנה Gallus בפרנקפורט אם מיין, גרמניה. הסיבה לכך היא שקוד המדינה של צרפת (FRA) בן 3 האותיות לא נתמך, ולכן התוצאות מכל מדינה מותרות, והתוצאה בפרנקפורט מתאימה יותר מכל תוצאה בצרפת.
      https://maps.googleapis.com/maps/api/geocode/json?components=country:FRA%7Clocality:gallus&key=YOUR_API_KEY
  • לא בטוח שממשק Geocoding API יחזיר כמה תוצאות לשאילתות לא ברורות. לשאילתות כאלה עדיף להשתמש בתכונה 'השלמה אוטומטית של מקומות'.

    דוגמאות:

    • מערכת הגיאוקוד של components=country:US|locality:madrid מחזירה את הערך "Madrid, NM 87010, USA", אבל לא אף אחת מהערים האחרות בארה"ב שנקראות Madrid.
      https://maps.googleapis.com/maps/api/geocode/json?components=country:US%7Clocality:madrid&key=YOUR_API_KEY
    • שימוש בהשלמה האוטומטית של מקומות עבור input=madrid&components=country:us&types=(regions), וגם ציון חלון תצוגה באמצעות location ו-radius כדי להטות את תוצאות המיקום, יוצר תגובה עם כמה ערים בארה"ב שנקראות 'Madrid'.
      https://maps.googleapis.com/maps/api/place/autocomplete/json?location=37.386052,-122.083851&radius=10000&input=madrid&components=country:us&types=(regions)&key=YOUR_API_KEY