אתם יכולים להשתמש ב-Places Service וב-Geocoding API עם Maps SDK ל-Android כדי לחפש אזורים ולקבל מידע נוסף על מקומות. השירות Places ו-Geocoding API הם חלופות יציבות ומתקדמות לקבלת מזהי מקומות. אם אתם כבר משתמשים במזהי מקומות, אתם יכולים להשתמש בהם שוב עם סגנון מבוסס-נתונים לגבולות.
כדי להוסיף את Places Service ואת Geocoding לאפליקציות Maps SDK for Android, אפשר להשתמש באחת מהשיטות הבאות:
- Places SDK ל-Android היא ספריית Android שמכילה שיטות להחזרת מידע על מקומות.
- Places API מחזיר מידע על מקומות באמצעות בקשות HTTP.
- הסיווג Geocoder יכול לבצע המרה של קואורדינטות לכתובות (reverse geocoding) ולקודד מיקומים גיאוגרפיים באופן דינמי על סמך קלט משתמש.
- Geocoding API מאפשר לכם לקודד כתובות סטטיות ידועות.
שימוש בשירות המקומות
איך משתמשים בחיפוש טקסט (חדש) כדי למצוא מזהה מקום
אפשר להשתמש ב-Text Search (New) REST API ב-Places API כדי לקבל מזהה מקום שכולל נתוני אזור. לשם כך, צריך לציין places.id
במסכת השדות. השימוש בחיפוש טקסט (חדש) כדי לבקש מזהי מקומות לא כרוך בתשלום. מידע נוסף
לדוגמה, כדי לקבל את מזהה המקום של טרינידד בקליפורניה, אפשר לבצע את הקריאה הבאה ל-API:
curl -X POST -d '{ "textQuery" : "Trinidad, CA" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.id' \ 'https://places.googleapis.com/v1/places:searchText'
שימוש בהשלמה אוטומטית של מקומות כדי למצוא אזורים
שירות ההשלמה האוטומטית של מקומות ב-Places SDK ל-Android מאפשר למשתמשים לחפש אזורים בצורה נוחה. כדי להגדיר את שירות השלמה אוטומטית של מקומות כך שיחזיר רק אזורים, צריך להשתמש ב-AutocompleteSupportFragment.setTypesFilter(List)
כדי להגדיר את מסנן הסוג ל-PlaceTypes.REGIONS
.
קבלת פרטי מקום באזור מסוים
שירות פרטי מקום ב-Places SDK ל-Android מחזיר נתונים על אזור מסוים, ויכול להיות מאוד שימושי. לדוגמה, אפשר:
- חיפוש מזהי מקומות של גבולות על סמך שמות מקומות.
- קבלת אזור התצוגה כדי לשנות את המרחק לגבול.
- מקבלים את סוג התכונה של הגבול (לדוגמה
locality
). - מקבלים את הכתובת המעוצבת, שמופיעה בתבנית 'שם המקום, מדינה, מדינה' באזור ארצות הברית (לדוגמה, 'Ottumwa, IA, USA').
- קבלת נתונים שימושיים אחרים, כמו תמונות.
שימוש ב-Geocoding API
Geocoding API מאפשר להמיר כתובת לקואורדינטות של קווי אורך ורוחב ולמזהה מקום, או להמיר קואורדינטות של קווי אורך ורוחב או מזהה מקום לכתובת. השימושים הבאים משתלבים היטב עם סגנון מבוסס-נתונים לגבולות:
- אפשר להשתמש בגיאו-קידוד כדי לקבל את אזור התצוגה של אזור מסוים.
- אפשר להחיל סינון של רכיבים על קריאת ה-Geocoding כדי לקבל את מזהי המקומות של אזורים אדמיניסטרטיביים 1-4, של יישוב או של מיקוד.
- אפשר להשתמש בגיאו-קידוד הפוך כדי למצוא מזהי מקומות לפי קואורדינטות של קווי אורך ורוחב, או אפילו להחזיר מזהי מקומות לכל הרכיבים במיקום מסוים.
בדוגמה הבאה נעשה שימוש בכתובת (עם תווים מיוחדים שמתאימים לכתובות URL) כדי לשלוח בקשה אל Geocoding API:
https://maps.googleapis.com/maps/api/geocode/json?address=1600%20Amphitheatre%20Pkwy%20Mountain%20View%20CA&key=YOUR_API_KEY
אפשר להשתמש בגיאו-קידוד הפוך כדי למצוא מזהי מקומות. בדוגמה הבאה, פונקציית שירות הגיאוקודינג מחזירה את מזהי המקומות של כל רכיבי הכתובת בקואורדינטות של קו הרוחב וקו האורך שצוינו:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY
אפשר להשתמש בגיאו-קידוד הפוך עם סינון רכיבים כדי לקבל את רכיב הכתובת עבור אחד או יותר מהסוגים הבאים במיקום שצוין:
administrativeArea
country
locality
postalCode
בדוגמה הבאה מוצגת פונקציה שמשתמשת בשירות הגיאוקודינג, ומוסיפה הגבלות על רכיבים באמצעות גיאוקודינג הפוך כדי לקבל את כל רכיבי הכתובת במיקום שצוין רק עבור הסוג locality
:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY