Maps SDK for Android Utility Library

پلتفرم را انتخاب کنید: Android iOS

به دنبال ویژگی های پیشرفته برای اضافه کردن به نقشه های خود هستید؟ Maps SDK for Android Utility Library یک کتابخانه منبع باز از کلاس ها است که برای طیف وسیعی از برنامه ها مفید است. مخزن GitHub شامل کلاس های کاربردی و یک برنامه آزمایشی است که استفاده از هر کلاس را نشان می دهد.

در این ویدیو، کریس برادفوت در مورد کتابخانه ابزار با تمرکز بر رمزگشایی چند خط، هندسه کروی و نمادهای حباب بحث می کند.

راه اندازی سریع

برای نصب Maps SDK for Android Utility Library، راهنمای راه‌اندازی را دنبال کنید.

آب و برق

نقشه ای با لایه GeoJSON

GeoJSON را روی نقشه خود وارد کنید

می‌توانید ویژگی‌ها را در قالب GeoJSON ذخیره کنید و از این ابزار برای رندر کردن آنها به صورت یک لایه در بالای نقشه استفاده کنید. برای افزودن داده های GeoJSON خود به نقشه addLayer() فراخوانی کنید. همچنین می‌توانید ویژگی‌های فردی را با فراخوانی addFeature() و ارسال یک شی GeoJsonFeature اضافه کنید.

برای جزئیات، به مستندات Google Maps Android GeoJSON Utility مراجعه کنید.

نقشه ای با لایه KML

KML را روی نقشه خود وارد کنید

با استفاده از این ابزار، می توانید اشیاء KML را به اشکال جغرافیایی تبدیل کرده و آنها را به صورت یک لایه در بالای نقشه رندر کنید. برای افزودن لایه خود به نقشه addLayerToMap() فراخوانی کنید. می‌توانید با فراخوانی getProperties() در هر Placemark، GroundOverlay، Document یا Folder به ویژگی‌های یک شی KML دسترسی داشته باشید.

برای جزئیات، به اسناد موجود در Google Maps Android KML Utility مراجعه کنید.

نقشه ای با نقشه حرارتی

نقشه های حرارتی را به نقشه خود اضافه کنید

نقشه های حرارتی درک توزیع و شدت نسبی نقاط داده روی نقشه را برای بینندگان آسان می کند. به جای قرار دادن یک نشانگر در هر مکان، نقشه های حرارتی از رنگ و شکل برای نمایش توزیع داده ها استفاده می کنند. یک HeatmapTileProvider ایجاد کنید، و مجموعه ای از اشیاء LatLng را که نشان دهنده نقاط مورد علاقه در نقشه هستند، به آن ارسال کنید. سپس یک TileOverlay جدید ایجاد کنید، آن را به ارائه‌دهنده کاشی نقشه حرارتی ارسال کنید و پوشش کاشی را به نقشه اضافه کنید.

برای جزئیات، به مستندات Google Maps Android Heatmap Utility مراجعه کنید.

نقشه ای با نمادهای حباب

نشانگرها را از طریق نمادهای حباب سفارشی کنید

یک IconGenerator اضافه کنید تا تکه هایی از اطلاعات را روی نشانگرهای خود نمایش دهید. این ابزار راهی را فراهم می کند تا نمادهای نشانگر شما کمی شبیه به پنجره های اطلاعاتی به نظر برسند، به طوری که نشانگر خود می تواند حاوی متن و محتوای دیگر باشد. مزیت این است که می توانید همزمان بیش از یک نشانگر را باز نگه دارید، در حالی که تنها یک پنجره اطلاعات می تواند به طور همزمان باز شود. همچنین می‌توانید به نشانگرها استایل دهید، جهت نشانگر و/یا محتوا را تغییر دهید، و تصویر پس‌زمینه نشانگر/نه پچ را تغییر دهید.

نقشه ای با نشانگرهای خوشه ای

خوشه های نشانگر را مدیریت کنید

ClusterManager به شما کمک می کند چندین نشانگر را در سطوح بزرگنمایی مختلف مدیریت کنید. این بدان معناست که شما می توانید تعداد زیادی نشانگر را روی نقشه قرار دهید بدون اینکه خوانش نقشه را سخت کند. وقتی کاربر نقشه را در سطح زوم بالا مشاهده می کند، نشانگرهای جداگانه روی نقشه نشان داده می شوند. هنگامی که کاربر به سطح زوم کمتری بزرگ‌نمایی می‌کند، نشانگرها به صورت دسته‌هایی جمع می‌شوند تا مشاهده نقشه را آسان‌تر کنند.

برای جزئیات، به مستندات Google Maps Android Marker Clustering Utility مراجعه کنید.

نقشه ای با چند لایه

چندین لایه را به یک نقشه اضافه کنید

می‌توانید ویژگی‌های GeoJSON، KML، و خوشه‌ها - و همچنین نشانگرها، چند خط‌ها و چند ضلعی‌های خود را - همه در یک نقشه نشان دهید. این لایه ها همچنین می توانند با افزودن یک کلیک شنونده به هر لایه، تعاملی شوند. به سادگی کلاس‌های MarkerManager ، GroundOverlayManager ، PolygonManager و PolylineManager را نمونه‌سازی کنید و زمانی که آنها را راه‌اندازی کردید، آنها را به سازنده‌های GeoJsonLayer ، KmlLayer ، ClusterManager ارسال کنید. سپس می توانید مستقیماً از کلاس های Manager بالا برای اضافه کردن نشانگرها، چند خط و چند ضلعی خود به نقشه استفاده کنید.

برای جزئیات، به مستندات موجود در نسخه نمایشی چند لایه اندروید Google Maps مراجعه کنید.

نقشه ای با چند خط کدگذاری شده

چند خطوط را رمزگذاری و رمزگشایی کنید

PolyUtil برای تبدیل چند خطوط و چند ضلعی های رمزگذاری شده به مختصات طول و عرض جغرافیایی و بالعکس مفید است.

در Google Maps، مختصات طول و عرض جغرافیایی که چند خط یا چند ضلعی را تعریف می کنند به عنوان یک رشته رمزگذاری شده ذخیره می شوند. توضیح مفصل کدگذاری چند خطی را ببینید. ممکن است این رشته رمزگذاری شده را در پاسخی از Google API دریافت کنید، مانند Directions API.

می‌توانید از PolyUtil در Maps SDK برای کتابخانه ابزار Android استفاده کنید تا دنباله‌ای از مختصات طول و عرض جغرافیایی ('LatLngs') را در یک رشته مسیر رمزگذاری‌شده، و برای رمزگشایی یک رشته مسیر کدگذاری‌شده به دنباله‌ای از LatLngs، رمزگذاری کنید. این کار قابلیت همکاری با سرویس‌های وب Google Maps APIs را تضمین می‌کند.

محاسبه فاصله بین دو نقطه روی نقشه

محاسبه فواصل، مساحت ها و سرفصل ها از طریق هندسه کروی

با استفاده از ابزارهای هندسه کروی در SphericalUtil ، می توانید فاصله ها، مساحت ها و عناوین را بر اساس طول و عرض جغرافیایی محاسبه کنید. در اینجا برخی از روش های موجود در ابزار کاربردی آورده شده است:

  • computeDistanceBetween() – فاصله بین دو مختصات طول و عرض جغرافیایی را بر حسب متر برمی گرداند.
  • computeHeading() - یاتاقان را بر حسب درجه بین دو مختصات طول و عرض جغرافیایی برمی‌گرداند.
  • computeArea() – مساحت مسیر بسته روی زمین را بر حسب متر مربع برمی گرداند.
  • interpolate() - مختصات طول و عرض جغرافیایی نقطه ای را برمی گرداند که کسری معین از فاصله بین دو نقطه داده شده است. برای مثال می توانید از این برای متحرک سازی یک نشانگر بین دو نقطه استفاده کنید.

برای فهرست کامل روش ها در ابزار به مستندات مرجع مراجعه کنید.

بررسی کنید که آیا یک مکان در نمای خیابان پشتیبانی می‌شود یا خیر

بررسی کنید آیا یک مکان در نمای خیابان پشتیبانی می‌شود یا خیر.

کلاس StreetViewUtil عملکردی را برای بررسی اینکه آیا یک مکان در نمای خیابان پشتیبانی می شود ارائه می دهد. می‌توانید هنگام افزودن پانورامای نمای خیابان به برنامه Android با تماس با این ابزار فراداده و تنها در صورتی که پاسخ OK باشد، پانورامای نمای خیابان را اضافه کنید، از بروز خطا جلوگیری کنید.

برای جزئیات، به مستندات مربوط به ابزار فراداده نمای خیابان در GitHub مراجعه کنید.