אתם יכולים להשתמש בשירות Places וב-Geocoding API עם ה-SDK של מפות ל-Android כדי לחפש אזורים ולקבל מידע נוסף על מקומות. Places Service ו-Geocoding API הם חלופות יעילות ויציבות לקבלת מזהי מקומות. אם אתם כבר משתמשים במזהי מקומות, אתם יכולים להשתמש בהם שוב עם סגנון מבוסס-נתונים לגבולות.
כדי להוסיף את Places Service ואת Geocoding לאפליקציות של Maps SDK for Android, אתם יכולים:
- Places SDK ל-Android היא ספריית Android שמכילה שיטות להחזרת מידע על מקומות.
- Places API מחזיר מידע על מקומות באמצעות בקשות HTTP.
- הכלי להמרת כתובות לקואורדינטות (geocoder) יכול להמיר כתובות לקואורדינטות ולהמיר קואורדינטות לכתובות באופן דינמי על סמך קלט של משתמשים.
- Geocoding API מאפשר להמיר לקואורדינטות כתובות סטטיות וידועות.
שימוש בשירות Places Service
איך משתמשים בחיפוש טקסט (חדש) כדי למצוא מזהה מקום
אתם יכולים להשתמש ב-API בארכיטקטורת REST של חיפוש טקסט (חדש) ב-Places API כדי לקבל מזהה מקום שכולל נתוני אזור, על ידי ציון places.id במסכת השדות. השימוש בחיפוש טקסט (חדש) כדי לבקש מזהי מקומות בלבד לא כרוך בתשלום. מידע נוסף
לדוגמה, כדי לקבל את מזהה המקום של Trinidad, CA, אפשר לבצע את הקריאה הבאה ל-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, יישובים או מספרי מיקוד, צריך להפעיל סינון רכיבים בקריאה להמרת כתובות לקואורדינטות.
- אתם יכולים להשתמש בהמרת קואורדינטות לכתובות (reverse geocoding) כדי למצוא מזהי מקומות לפי קואורדינטות של קווי רוחב ואורך, או אפילו להחזיר מזהי מקומות לכל הרכיבים במיקום מסוים.
בדוגמה הבאה נעשה שימוש בכתובת (עם תווי בריחה (escape) של כתובת URL) כדי לשלוח בקשה ל-Geocoding API:
https://maps.googleapis.com/maps/api/geocode/json?address=1600%20Amphitheatre%20Pkwy%20Mountain%20View%20CA&key=YOUR_API_KEYאפשר להשתמש בהמרת קואורדינטות לכתובות (reverse geocoding) כדי למצוא מזהי מקומות. הפונקציה הבאה של שירות Geocoding מחזירה את מזהי המקומות של כל רכיבי הכתובת בקואורדינטות של קווי הרוחב והאורך שצוינו:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEYאפשר להשתמש בהמרת קואורדינטות לכתובות (reverse geocoding) עם סינון רכיבים כדי לקבל את רכיב הכתובת של אחד או יותר מהסוגים הבאים במיקום שצוין:
administrativeAreacountrylocalitypostalCode
הפונקציה הבאה לדוגמה מראה איך להשתמש בשירות Geocoding, להוסיף הגבלות על רכיבים עם המרת קואורדינטות לכתובות כדי לקבל את כל רכיבי הכתובת במיקום שצוין רק לסוג locality:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY