Destek

Bu sayfada, vektör haritaları ve WebGL özellikleriyle ilgili bilinen sorunlar ve geçici çözümler listelenmektedir.

Tarayıcı/cihaz desteği

WebGL özellik önizlemesi, Maps JavaScript API ile aynı tarayıcıları ve cihazları destekler. Belirli bir cihazdaki tarayıcının WebGL'yi destekleyip desteklemediğini kontrol etmek için get.webgl.org veya caniuse.com adresini ziyaret edin. Lütfen tarayıcı ayarlarında donanım hızlandırmanın da etkinleştirildiğinden emin olun. Aksi takdirde vektör haritaları raster'e geri döner.

Kafes mi vektör mü?

Bazen bir vektör haritası kafese geri dönebilir. Böyle bir durumda, vektör haritasına bağlı özellikler kullanılamaz. Bir kafes haritasına geçiş çeşitli nedenlerle olabilir. Bu bölümde, web tarayıcınızı doğru şekilde nasıl yapılandıracağınız ve vektör harita özelliğinin olup olmadığını programlı bir şekilde nasıl kontrol edeceğiniz gösterilmektedir.

Chrome'da tarayıcı özelliklerini kontrol etme

Belirli bir Chrome kurulumunda hangi donanım hızlandırma özelliklerinin etkinleştirildiğini belirlemek için chrome://gpu/ adresine gidin ve aşağıdaki öğelerin etkinleştirildiğinden (yeşil) emin olun:

  • "OpenGL: Etkin"
  • "WebGL: Donanım hızlandırmalı"
  • "WebGL2: Donanım hızlandırmalı"

(Bunlar yalnızca temel gereksinimlerdir. Desteği etkileyen başka faktörler de olabilir. Aşağıdaki "Bilinen hatalar" bölümüne bakın.)

Donanım hızlandırmayı etkinleştirme

Vektör eşlemelerini desteklemek için, donanım hızlandırmanın çoğu tarayıcıda etkinleştirilmiş olması gerekir. Chrome ve Microsoft Edge'de donanım hızlandırmayı etkinleştirmek için Ayarlar'ı açıp Sistem'i seçin ve Kullanılabilir olduğunda donanım hızlandırmayı kullan seçeneğinin etkinleştirildiğinden emin olun.

Kafes veya vektörü programlı olarak kontrol etme

map.getRenderingType() komutunu çağırarak bir haritanın kafes veya vektör olup olmadığını programlı bir şekilde kontrol edebilirsiniz. Aşağıdaki örnekte, renderingtype_changed etkinliğini izlemek için gereken kod ve bir kafes veya vektör haritanın kullanımda olup olmadığını gösteren bilgi penceresi gösterilmektedir.

TypeScript

/**
 * This example creates a map with an info window that shows whether
 * the map render type is raster or vector.
 */

 function initMap() {
    const center = {lat: 0, lng: 0};
    const map = new google.maps.Map(document.getElementById('map') as HTMLElement, {
      center,
      zoom: 10,
      heading: 0.0,
      tilt: 0.0,
      // Map ID for a vector map.
      mapId: '6ff586e93e18149f',
    });
    const canvas = document.createElement("canvas");
    const infoWindow = new google.maps.InfoWindow({
      content: '',
      ariaLabel: 'Raster/Vector',
      position: center,
    });
    infoWindow.open({
      map,
    });

    map.addListener('renderingtype_changed', () => {
      infoWindow.setContent(`${map.getRenderingType()}`);
    });
  }

  declare global {
    interface Window {
      initMap: () => void;
    }
  }
  window.initMap = initMap;

JavaScript

/**
 * This example creates a map with an info window that shows whether
 * the map render type is raster or vector.
 */
function initMap() {
  const center = { lat: 0, lng: 0 };
  const map = new google.maps.Map(document.getElementById("map"), {
    center,
    zoom: 10,
    heading: 0.0,
    tilt: 0.0,
    // Map ID for a vector map.
    mapId: "6ff586e93e18149f",
  });
  const canvas = document.createElement("canvas");
  const infoWindow = new google.maps.InfoWindow({
    content: "",
    ariaLabel: "Raster/Vector",
    position: center,
  });

  infoWindow.open({
    map,
  });
  map.addListener("renderingtype_changed", () => {
    infoWindow.setContent(`${map.getRenderingType()}`);
  });
}

window.initMap = initMap;

WebGL 2 desteğini kontrol etmek için WebGL oluşturma bağlamını da kullanabilirsiniz:

const canvas = document.createElement("canvas");
canvas.getContext("webgl2") ? console.log("WebGL 2 is supported") : console.log("WebGL 2 is NOT supported");

WebGL oluşturma bağlamını programatik olarak algılamanın diğer yollarını öğrenin.

Mobil web desteği

Vektör haritaları için mobil web desteği hâlâ deneme aşamasındadır. Geliştiriciler, mobil web tarayıcılarını algılamak için istemci API'lerinden ve vektör haritası yerine bir kafes haritayla ilişkilendirilmiş harita kimliğinden yararlanabilir. Bazı mobil cihazlarda, oluşturma performansının daha yavaş olmasını bekliyoruz. Mobil web'de vektör haritalarını kullanmayı seçerseniz, performans istatistiklerini ve geri bildirimlerini almaktan büyük memnuniyet duyarız. Yukarıda olduğu gibi, Vektör Haritaları desteği kullanılamıyorsa vektör harita kimliği otomatik olarak kafes haritasına geçer.

Böcekler

Bilinen hatalar

  • AMD GPU'ları olan bazı macOS cihazlardaki Chrome'da bilinen bir sorun vardır. Bu durum özellikle macOS birden fazla GPU'ya sahip cihazlarda GPU'lar arasında dinamik olarak geçiş yaptığında kafa karıştırıcı olabilir. Bu nedenle, başka hangi uygulamaların çalıştığına veya harici monitörün bağlı olup olmamasına bağlı olarak vektör haritaları kullanılamayabilir. Chrome'un yakında kullanıma sunulacak ANGLE Metal arka ucunu açmak, bazı durumlarda bu sorunu düzeltir. Bununla ilgili genel kullanıma sunma planlarını https://bugs.chromium.org/p/chromium/issues/detail?id=1322521 adresinde bulabilirsiniz.

Hata bildirme

  • Hatayı bildirmeden önce lütfen tarayıcı ve GPU sürücüsünü en son sürüme güncelleyin.
  • chrome://settings/system (Chrome), about:preferences#general (Firefox), edge://settings/system (Microsoft Edge) donanım hızlandırma ayarının etkin olduğundan emin olun. Safari'de bu ayar macOS 10.15 veya daha yeni sürümlerde otomatik olarak etkinleştirilir. Daha eski MacOS sürümlerinde lütfen Safari'nin gelişmiş ayarlarına gidin ve "Donanım hızlandırmayı kullan" seçeneğinin etkinleştirildiğinden emin olun.
  • Hata raporuna jsfiddle örnek kod bağlantısını ekleyin.
  • Ayrıca lütfen chrome://gpu (Chrome), about:support (Firefox) veya edge://gpu (Microsoft Edge) ekran görüntüsünü alın. Herhangi bir oluşturma sorunuyla karşılaşırsanız GPU ile ilgili bilgileri hata raporuna ekleyin.

Düşüncelerinizi bizimle paylaşın

Siz ve son kullanıcılarınız için en iyi vektör haritası deneyimini oluşturmaya çalışıyoruz. Bu nedenle geri bildirimlerinize değer veriyoruz. Aşağıdaki durumlarda lütfen bize bildirin:

  • Web uygulamalarınızda yeni JavaScript hataları veya hatalar/çökmeler varsa.
  • Vektör haritalarındaki başlatma gecikmesi, kafes haritalardan önemli ölçüde daha kötüdür. Bu durumda, başlatma gecikmesi regresyonu metrikleri çok yararlıdır. Genel olarak, başlatma gecikmesinin kabul edilebilir eşiklerin ötesine geçip geçmediğini öğrenmek istiyoruz.
  • Vektör haritaları kullanımı yeterince sorunsuz değildir. FPS veya jank metriklerini günlüğe kaydederseniz vektör ve kafes haritaları arasındaki fark nedir?
  • Performans, tarayıcıya göre büyük farklılıklar gösterir.

Vektör haritaları ve kafes haritaların karşılaştırması için A/B testi oluşturduysanız lütfen edindiğiniz performans geri bildirimlerini bizimle paylaşın. Bu geri bildirimler, özelliği iyileştirmemize yardımcı olacaktır.