Android için Haritalar SDK'sı, bir haritanın bit eşlem resmini sunarak kullanıcıya sınırlı etkileşim imkanı sunabilir. Bu, basit mod haritası olarak adlandırılır.
Kod örnekleri
GitHub'daki ApiDemos deposu, basit modun kullanımını gösteren örnekler içerir:
- LiteDemoActivity - Java: Java'da basit mod haritası kullanmayla ilgili temel bilgiler
- LiteDemoActivity - Kotlin: Kotlin'de basit mod haritası kullanmayla ilgili temel bilgiler
- LiteListDemoActivity - Java: Java'da basit modu kullanarak Haritaları ListViews'da verimli bir şekilde görüntüleme
- LiteListDemoActivity - Kotlin: Kotlin'de basit modu kullanarak Haritaları ListView'larda verimli bir şekilde görüntüleme
Basit moda genel bakış
Basit mod haritası, belirli bir konum ve yakınlaştırma düzeyindeki bir haritanın bit eşlem görüntüsüdür. Basit mod tüm harita türlerini (normal, hibrit, uydu, arazi) ve tam API tarafından sağlanan işlevlerin bir alt kümesini destekler. Basit mod, bir akışta çok sayıda harita veya anlamlı etkileşimi destekleyemeyecek kadar küçük bir harita sağlamak istediğinizde kullanışlıdır.
Haritayı görüntüleyen kullanıcılar haritayı yakınlaştıramaz veya kaydıramaz. Haritadaki simgeler, kullanıcıların Google Haritalar mobil uygulamasında haritayı görüntüleyebilmesi ve yol tarifi istemesi için erişim izni verir.
Basit mod haritası ekleme
Basit mod, tam Google Haritalar Android API'si ile aynı sınıf ve arayüzleri kullanır. Aşağıdaki yöntemleri kullanarak GoogleMap
cihazını basit moda ayarlayabilirsiniz:
MapView
veyaMapFragment
için XML özelliği olarak- Veya
GoogleMapOptions
nesnesinde
MapView
veya MapFragment
için XML özelliği olarak
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
android:name="com.google.android.gms.maps.MapFragment"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
map:cameraZoom="13"
map:mapType="normal"
map:liteMode="true"/>
GoogleMapOptions
nesnesinde
Kotlin
val options = GoogleMapOptions() .liteMode(true)
Java
GoogleMapOptions options = new GoogleMapOptions() .liteMode(true);
Haritanın ilk durumunu ayarlama hakkında ayrıntılı bilgi için harita nesnesi kılavuzuna bakın.
Harita görünümü veya yol tarifi isteği başlatma amaçları
Varsayılan olarak, haritanın sağ alt kısmındaki araç çubuğu, Google Haritalar mobil uygulamasındaki bir harita görünümüne veya yol tarifi isteğine erişim sağlayan simgeler içerir. UiSettings.setMapToolbarEnabled(false)
çağrısı yaparak araç çubuğunu devre dışı bırakabilirsiniz. Daha fazla bilgi için araç çubuğu dokümanlarına bakın.
Ayrıca varsayılan olarak, kullanıcı haritaya dokunduğunda API, Google Haritalar mobil uygulamasını başlatır. Kendi işleyicinizi ayarlamak için GoogleMap.setOnMapClickListener()
API'sini kullanarak bunu geçersiz kılabilirsiniz. Ayrıca, MapView
veya MapFragment
öğesini içeren görünümde setClickable()
yöntemini çağırarak haritadaki tıklama etkinliklerini devre dışı bırakabilirsiniz. Bu iki teknikin ayrıntıları için etkinlikler belgelerine bakın.
Yaşam döngüsü etkinlikleri
API'yi tamamen etkileşimli modda kullanırken MapView
sınıfının kullanıcıları, tüm etkinlik yaşam döngüsü yöntemlerini MapView
sınıfındaki ilgili yöntemlere yönlendirmelidir. Yaşam döngüsü yöntemlerine örnek olarak onCreate()
, onDestroy()
, onResume()
ve onPause()
verilebilir.
MapView
sınıfını basit modda kullanırken, aşağıdaki durumlar haricinde yaşam döngüsü etkinliklerini yönlendirme işlemi isteğe bağlıdır:
onCreate()
numaralı telefonu aramak zorunludur, aksi takdirde harita görünmez.- Basit mod haritanızda Konumum noktasını göstermek ve varsayılan konum kaynağını kullanmak istiyorsanız, konum kaynağı yalnızca bu çağrılar arasında güncellendiğinden
onResume()
veonPause()
çağrılarını yapmanız gerekir. Kendi konum kaynağınızı kullanıyorsanız bu iki yöntemi çağırmanıza gerek yoktur.
Desteklenen API özellikleri
Aşağıdaki tabloda, basit mod haritasının API işlevselliğinin her bir alanı için davranışı açıklanmaktadır. Bir uygulama, basit modda desteklenmeyen bir yöntemi çağırırsa API bir uyarı mesajı kaydeder.
İşlevler | |
---|---|
Harita türleri | Destekleniyor mu? Evet
Şu harita türleri GoogleMapOptions.mapType() ve GoogleMap.setMapType() üzerinden kullanılabilir: MAP_TYPE_NORMAL , MAP_TYPE_SATELLITE , MAP_TYPE_TERRAIN , MAP_TYPE_HYBRID , MAP_TYPE_NONE |
Çoklu çizgiler, poligonlar, daireler | Destekleniyor mu? Evet
Şekiller için basit mod işlevi, tam API ile eşleşir. |
Tahmin | Destekleniyor mu? Evet
Projection için basit mod işlevi, tam API ile eşleşir. |
Konumum | Destekleniyor mu? Evet
Konumum katmanının basit mod işlevi, tam API ile eşleşir. |
Harita dolgusu | Destekleniyor mu? Evet
Harita dolgusu için basit mod desteği, tam API ile eşleşir. |
Bilgi pencereleri | Destekleniyor mu? Evet
Bir işaretçinin title() değerini ayarlarsanız kullanıcı işaretçiye dokunduğunda varsayılan
bilgi penceresi görünür. İşaretçide showInfoWindow() yöntemini çağırarak bilgi penceresini programatik olarak gösterebilirsiniz.
Dilerseniz InfoWindowAdapter arayüzü aracılığıyla özel bilgi pencereleri de oluşturabilirsiniz. |
Özel temel harita stilleri | Destekleniyor mu? Kısmen
Android için Haritalar SDK'sı, temel haritanın özel stilini destekler. Basit Mod yalnızca JSON tabanlı özel stilleri destekler, stil verilmiş bir harita oluşturmak için harita kimliği gerektiren bulut tabanlı stilleri desteklemez. |
İşaretçiler | Destekleniyor mu? Kısmen
İşaretçi ekleyebilir ve bir tıklama etkinliğine yanıt verebilirsiniz. Özel işaretçi simgeleri de ekleyebilirsiniz. İşaretçiyi sürüklenebilir yapmak mümkün değildir. Basit mod haritasındaki işaretçiler düzdür ve döndürülemez. |
Kamera konumu, yakınlaştırma ve animasyon | Destekleniyor mu? Kısmen
Kamera hedefini ve yakınlaştırmayı ayarlayabilirsiniz, ancak yatırmayı veya yönü belirleyemezsiniz.
Basit modda yakınlaştırma düzeyi en yakın tam sayıya yuvarlanır.
|
Etkinlikleri eşleştirme | Destekleniyor mu? Kısmen
Basit mod Basit modda bir haritada tıklama etkinliklerini devre dışı bırakmak için Ayrıntılar için etkinlikler belgelerini inceleyin. |
İç mekan haritaları ve binalar | Destekleniyor mu? Hayır
Basit mod, Haritalar Static API ile aynı kartları gösterir.
Bu, iç mekan kat planı varsayılan karoya yerleştirilmişse görüneceği anlamına gelir. Aksi takdirde çalışmaz. Ayrıca, gösterilen seviyeyi değiştiremez veya seviye seçiciyi değiştiremezsiniz. |
Trafik katmanı | Destekleniyor mu? Hayır
GoogleMap.setTrafficEnabled() , basit modda desteklenmez. |
Zeminde bindirmeler | Destekleniyor mu? Hayır
GoogleMap.addGroundOverlay() , basit modda desteklenmez. |
Karo yer paylaşımları | Destekleniyor mu? Hayır
GoogleMap.addTileOverlay() , basit modda desteklenmez. |
Hareketler | Destekleniyor mu? Hayır
Basit mod, hareketleri desteklemez. Hareketleri etkinleştirmenin ve devre dışı bırakmanın herhangi bir etkisi olmaz. |
Street View | Destekleniyor mu? Hayır
Street View, basit modda desteklenmez. |