میتوانید از «سرویس مکانها» و Geocoding API با «کیت توسعه نرمافزار Maps برای Android» برای جستجوی مناطق و دریافت اطلاعات بیشتر درباره مکانها استفاده کنید. «سرویس مکانها» و Geocoding API جایگزینهای قدرتمند و پایداری برای دریافت شناسههای جا هستند. اگر ازقبل از شناسههای مکان استفاده میکنید، میتوانید از آن شناسهها با سبکبندی دادهمحور برای مرزها استفاده مجدد کنید.
«سرویس مکانها» و «زمینکدیابی» را به روشهای زیر به برنامههای «کیت توسعه نرمافزار Maps برای Android» اضافه کنید:
- کیت توسعه نرمافزار مکانها، ویژه Android یک کتابخانه Android است که حاوی روشهایی برای برگرداندن اطلاعات درباره مکانها است.
- Places API بااستفاده از درخواستهای HTTP، اطلاعات مربوط به مکانها را برمیگرداند.
- کلاس Geocoder میتواند بهطور پویا از ورودی کاربر زمینکدیابی و زمینکدیابی معکوس کند.
- Geocoding API به شما امکان میدهد نشانیهای ثابت و شناختهشده را زمینکدیابی کنید.
استفاده از Places Service
استفاده از «جستجوی نوشتار (جدید)» برای پیدا کردن شناسه مکان
میتوانید از جستجوی نوشتار (جدید)
REST API در 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'استفاده از «تکمیل خودکار جاها» برای یافتن مناطق
سرویس تکمیل خودکار جا در «کیت توسعه نرمافزار مکانها» برای Android روشی راحت برای جستجوی مناطق توسط کاربران ارائه میدهد. برای پیکربندی سرویس «تکمیل خودکار مکانها» برای
برگرداندن فقط مناطق، از
AutocompleteSupportFragment.setTypesFilter(List)
برای تنظیم فیلتر نوع روی PlaceTypes.REGIONS استفاده کنید.
دریافت جزئیات مکان برای یک منطقه
سرویس جزئیات مکان در «کیت توسعه نرمافزار مکانها» برای Android دادههای مربوط به یک منطقه را برمیگرداند که میتواند بسیار مفید باشد. برای مثال، میتوانید:
- شناسههای مکان مرزی را براساس نام مکانها جستجو کنید.
- دریافت ناحیه نمایش برای بزرگنمایی تا مرز.
- نوع عارضه را برای مرز دریافت کنید (برای مثال
locality). - نشانی قالببندیشده را دریافت کنید که در منطقه ایالات متحده به «نام مکان، ایالت، کشور» تبدیل میشود (برای نمونه، «Ottumwa, IA, USA»).
- دادههای مفید دیگری مثل عکسها را دریافت کنید.
استفاده از Geocoding API
Geocoding API به شما امکان میدهد نشانی را به مختصات عرض جغرافیایی و طول جغرافیایی و «شناسه مکان» تبدیل کنید، یا مختصات عرض جغرافیایی و طول جغرافیایی یا «شناسه مکان» را به نشانی تبدیل کنید. موارد استفاده زیر بهخوبی با سبکبندی دادهمحور برای مرزها ترکیب میشوند:
- از «زمینکدیابی» برای دریافت نمای هدف برای یک منطقه استفاده کنید.
- برای دریافت شناسههای مکان برای تقسیمات کشوری ۱ تا ۴، محل، یا کد پستی، فیلتر کردن مؤلفه را در تماس «زمینکدیابی» خود اعمال کنید.
- از زمینکدیابی معکوس برای پیدا کردن شناسههای جا براساس مختصات طول و عرض جغرافیایی استفاده کنید، یا حتی شناسههای جا را برای همه مؤلفهها در مکانی خاص برگردانید.
مثال زیر از نشانی (با گریز 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از زمینکدیابی معکوس با فیلتر کردن مؤلفه استفاده کنید تا مؤلفه نشانی را برای یک یا چند نوع زیر در مکان مشخصشده دریافت کنید:
administrativeAreacountrylocalitypostalCode
تابع نمونه بعدی استفاده از سرویس «زمینکدیابی» را نشان میدهد، که محدودیتهای مؤلفه را با زمینکدیابی معکوس اضافه میکند تا همه مؤلفههای نشانی را در مکان مشخصشده فقط برای نوع locality دریافت کند:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY