Basit Mod

Android için Haritalar SDK'sı, bir haritanın bit eşlem görüntüsünü sunarak kullanıcıya sınırlı etkileşim olanağı sunabilir. Buna basit mod haritası denir.

Kod örnekleri

GitHub'daki ApiDemos deposu, basit modun kullanımını gösteren örnekler içerir:

Basit moda genel bakış

Basit mod haritası, bir haritanın belirli bir konum ve yakınlaştırma düzeyindeki bit eşlem görüntüsüdür. Basit mod, tüm harita türlerini (normal, karma, uydu, arazi) ve tam API'nin sağladığı işlevlerin bir alt kümesini destekler. Basit mod, bir akışta birkaç harita veya anlamlı etkileşimi desteklemeyecek kadar küçük bir harita sunmak 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 haritayı Google Haritalar mobil uygulamasında görüntülemesine ve yol tarifi istemesine olanak tanır.

Basit mod haritası ekleme

Basit mod, tam Google Haritalar Android API'si ile aynı sınıfları ve arayüzleri kullanır. Bir GoogleMap cihazını basit moda şu şekilde ayarlayabilirsiniz:

  • MapView veya MapFragment 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 başlangıç durumunu ayarlama hakkında ayrıntılı bilgi için harita nesnesi rehberine bakın.

Harita görünümü veya yol tarifi isteği başlatma amaçları

Haritanın sağ alt kısmındaki bir araç çubuğu, varsayılan olarak Google Haritalar mobil uygulamasındaki harita görünümüne veya yol tarifi isteğine erişim sağlayan simgeler içerir. UiSettings.setMapToolbarEnabled(false) numaralı telefonu arayarak araç çubuğunu devre dışı bırakabilirsiniz. Daha fazla ayrıntı için araç çubuğu dokümanlarına bakın.

Ayrıca, bir kullanıcı haritaya dokunduğunda API, varsayılan olarak Google Haritalar mobil uygulamasını başlatır. Kendi dinleyicinizi ayarlamak için GoogleMap.setOnMapClickListener() kullanarak bunu geçersiz kılabilirsiniz. MapView veya MapFragment öğesini içeren görünümde setClickable() öğesini çağırarak haritadaki tıklama etkinliklerini de devre dışı bırakabilirsiniz. Bu iki teknikle ilgili 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 şunlar verilebilir: onCreate(), onDestroy(), onResume() ve onPause().

MapView sınıfını basit modda kullanırken aşağıdaki durumlar haricinde yönlendirme yaşam döngüsü olayları isteğe bağlıdır:

  • onCreate() yönteminin çağrılması 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üncelleneceği için onResume() ve onPause() çağrılarını yapmanız gerekir. Kendi konum kaynağınızı kullanıyorsanız bu iki yöntemi çağırmanız gerekmez.

Desteklenen API özellikleri

Aşağıdaki tabloda, basit mod haritasının API işlevlerinin her bir alanı için davranışı açıklanmaktadır. Bir uygulama, basit modda desteklenmeyen bir yöntemi çağırırsa API bir uyarı mesajı günlüğe kaydeder.

İşlevler
Harita türleri
Destekleniyor mu? Evet
GoogleMapOptions.mapType() ve GoogleMap.setMapType() üzerinden şu harita türleri 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.
Projeksiyon
Destekleniyor mu? Evet
Projeksiyon 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
Eşleme 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. 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, stilize edilmiş 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. Bir işaretçiyi sürüklenebilir hale getirmek 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ü değiştiremezsiniz. Basit modda yakınlaştırma düzeyi en yakın tam sayıya yuvarlanır. GoogleMap.moveCamera() numaralı telefonu aradığınızda size basit modda başka bir harita görüntüsü gösterilir. Kamerayı ayarlama ve değiştirme hakkında daha fazla bilgi için bkz. Görünümü Değiştirme.

GoogleMap.animateCamera() işlevinin çağrılması kamera hareketinin animasyonuyla sonuçlanmaz. Kamera görünümü anında yeni konuma taşınır.

Etkinlikleri eşleştirme
Destekleniyor mu? Kısmen

Basit mod, GoogleMap.setOnMapClickListener() ve GoogleMap.setOnMapLongClickListener() özelliklerini destekler.

Basit modda bir haritadaki tıklama etkinliklerini devre dışı bırakmak için MapView veya MapFragment içeren görünümde setClickable() komutunu çağırabilirsiniz. Bu, örneğin bir haritayı veya haritaları liste görünümünde görüntülerken tıklama etkinliğinin haritayla ilgili olmayan bir işlemi çağırmasını istediğiniz durumlarda yararlıdır.

Ayrıntılar için etkinlikler belgelerine bakın.

İç mekan haritaları ve binaları
Destekleniyor mu? Hayır
Basit mod, Haritalar Statik API ile aynı blokları gösterir. Bu, iç mekan kat planı varsayılan karoya eklenmişse görüneceği anlamına gelir. Aksi takdirde kazanamaz. 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.
Zemin bindirme
Destekleniyor mu? Hayır
GoogleMap.addGroundOverlay(), basit modda desteklenmez.
Yer paylaşımlı karo
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.