Android Yardımcı Program Kitaplığı için Haritalar SDK'sı

Platform seçin: Android iOS

Haritalarınıza eklemek için gelişmiş özellikler mi arıyorsunuz? Android Yardımcı Program Kitaplığı Haritalar SDK'sı, çeşitli uygulamalar için yararlı olan açık kaynaklı bir sınıf kitaplığıdır. GitHub veri havuzunda yardımcı programlar ve her sınıfın kullanımını gösteren bir demo uygulaması bulunur.

Bu videoda Chris Broadfit, çoklu çizgi kod çözme, küresel geometri ve balon simgelerine odaklanarak yardımcı program kitaplığını ele alıyor.

Hızlı kurulum

Android Yardımcı Program Kitaplığı'nın Haritalar SDK'sını yüklemek için kurulum kılavuzunu inceleyin.

Yardımcı programlar

GeoJSON katmanına sahip bir harita

GeoJSON'yi haritanıza aktarın

Özellikleri GeoJSON biçiminde depolayabilir ve bu yardımcı programı kullanarak bunları haritanın üzerinde bir katman olarak oluşturabilirsiniz. GeoJSON verilerinizi haritaya eklemek için addLayer() numaralı telefonu arayın. Ayrıca, addFeature() çağrısı yaparak ve bir GeoJsonFeature nesnesinin içinden geçerek özellikler ekleyebilirsiniz.

Ayrıntılar için Google Haritalar Android GeoJSON Yardımcı Programı'ndaki dokümanlara bakın.

KML katmanı bulunan bir harita

Haritanıza KML'yi aktarma

Bu yardımcı programı kullanarak KML nesnelerini coğrafi şekillere dönüştürüp bir haritanın üst katmanı olarak oluşturabilirsiniz. Katmanınızı haritaya eklemek için addLayerToMap() numaralı telefonu arayın. Herhangi bir Yer İşareti, Zemin Yer Paylaşımı, Doküman veya Klasörde getProperties() öğesini çağırarak bir KML nesnesindeki özelliklere erişebilirsiniz.

Ayrıntılar için Google Haritalar Android KML Yardımcı Programı dokümanlarına bakın.

Isı haritası olan harita

Haritanıza ısı haritaları ekleme

Isı haritaları, izleyicilerin bir haritadaki veri noktalarının dağılımını ve göreli yoğunluğunu anlamalarını kolaylaştırır. Isı haritaları, her bir konuma işaretçi yerleştirmek yerine, verilerin dağıtımını göstermek için renk ve şekil kullanır. Haritadaki önemli yerleri temsil eden bir LatLng nesnesi koleksiyonunu ileten bir HeatmapTileProvider oluşturun. Ardından, ısı haritası karo sağlayıcısından geçerek yeni bir TileOverlay oluşturun ve karo yer paylaşımını haritaya ekleyin.

Ayrıntılar için Google Haritalar Android Isı Haritası Yardımcı Programı'ndaki dokümanlara bakın.

Balon simgeleri olan harita

Baloncuk simgeleriyle işaretçileri özelleştirin

İşaretçilerinizde bilgi snippet'leri görüntülemek için bir IconGenerator ekleyin. Bu yardımcı program, işaretçi simgelerinin metin ve diğer içerikleri içerebilmesi için işaretçi simgelerinizin biraz bilgi pencereleri gibi görünmesini sağlar. Bunun avantajı, aynı anda birden fazla işaretçiyi açık tutarken aynı anda yalnızca bir bilgi penceresinin açık kalabilmesidir. Ayrıca işaretçilerin stilini ayarlayabilir, işaretçinin ve/veya içeriğin yönünü değiştirebilir ve işaretçinin arka plan resmini/dokuz kısmını değiştirebilirsiniz.

Kümelenmiş işaretçileri olan bir harita

İşaretçi kümelerini yönetin

ClusterManager, farklı yakınlaştırma düzeylerinde birden çok işaretçiyi yönetmenize yardımcı olur. Bu nedenle haritayı okumayı zorlaştırmadan çok sayıda işaretçi ekleyebilirsiniz. Bir kullanıcı haritayı yüksek bir yakınlaştırma düzeyinde görüntülediğinde, harita üzerinde bağımsız işaretçiler gösterilir. Kullanıcı görüntüyü daha düşük bir yakınlaştırma seviyesine yakınlaştırdığında, harita görüntülemeyi kolaylaştırmak için işaretçiler bir araya gelerek küme oluşturur.

Ayrıntılar için Google Haritalar Android Marker Kümeleme Yardımcı Programı dokümanını inceleyin.

Çok katmanlı bir harita

Aynı haritaya birden fazla katman ekleme

GeoJSON, KML ve kümelerin yanı sıra kendi işaretçileriniz, çoklu çizgileriniz ve poligonlarınızın özelliklerini de aynı haritada gösterebilirsiniz. Bu katmanlar, her katmana tıklama işleyicisi ekleyerek de etkileşimli hale getirilebilir. MarkerManager, GroundOverlayManager, PolygonManager ve PolylineManager sınıflarını örneklendirmeniz ve oluşturduktan sonra GeoJsonLayer, KmlLayer ve ClusterManager sınıf kurucularına aktarmanız yeterlidir. Ardından kendi işaretçilerinizi, çoklu çizgilerinizi ve poligonlarınızı haritaya eklemek için yukarıdaki Manager sınıfını doğrudan kullanabilirsiniz.

Ayrıntılar için Google Haritalar Android Çok Katmanlı Demonun dokümanlarına bakın.

Kodlanmış çoklu çizgisi olan bir harita

Çoklu çizgileri kodlama ve kodlarını çözme

PolyUtil, kodlanmış poligonları ve poligonları enlem/boylam koordinatlarına veya bunların tam tersi olan enlem ve boylam koordinatlarına dönüştürmek için kullanışlıdır.

Google Haritalar'da, bir çoklu çizgiyi veya poligonu tanımlayan enlem ve boylam koordinatları kodlanmış dize olarak depolanır. Çoklu çizgi kodlaması ile ilgili ayrıntılı açıklamayı inceleyin. Bu kodlanmış dizeyi Directions API gibi bir Google API'sinin yanıtında alabilirsiniz.

Enlem/boylam koordinatlarını ('LatLngs') kodlamalı bir yol dizesine kodlamak ve kodlanmış yol dizesinin kodunu LatLngs dizisi şeklinde çözmek için Android Yardımcı Programlar Kitaplığı'ndaki PolyUtil işaretlemesini kullanabilirsiniz. Böylece Google Haritalar API'leri web hizmetleriyle birlikte çalışabilirlik sağlanır.

Bir haritada iki nokta arasındaki mesafenin hesaplanması

Küresel geometri yoluyla mesafeleri, alanları ve başlıkları hesaplayın

SphericalUtil konumundaki küresel geometri yardımcı programlarını kullanarak mesafeleri, alanları ve başlıkları enlem ve boylama göre hesaplayabilirsiniz. Yardımcı programda kullanılabilecek yöntemlerden bazıları şunlardır:

  • computeDistanceBetween() – İki enlem/boylam koordinatları arasındaki mesafeyi metre cinsinden döndürür.
  • computeHeading() – İki enlem/boylam koordinatları arasındaki konumu derece cinsinden döndürür.
  • computeArea() – Dünya'daki kapalı bir yolun alanını metrekare olarak döndürür.
  • interpolate() – Belirli bir iki nokta arasındaki mesafenin belirli bir kesirinde bulunan noktanın enlem/boylam koordinatlarını döndürür. Örneğin, iki nokta arasındaki bir işaretleyiciyi canlandırmak için bunu kullanabilirsiniz.

Yardımcı programdaki yöntemlerin tam listesi için referans dokümanlarına bakın.