Bulut tabanlı harita stili

Google Haritalar Platformu, Google Cloud Console'u kullanarak haritalarınızın stilini ayarlamayı, özelleştirmeyi ve yönetmeyi kolaylaştıran Cloud tabanlı harita stili özellikleri sunar. Böylece, her stil değişikliği yaptığınızda uygulamanızın kodunu güncellemek zorunda kalmadan kullanıcılarınız için özelleştirilmiş bir harita deneyimi oluşturabilirsiniz.

15 Eylül 2020'den önce oluşturulan stillerde Google Haritalar'ın gelişmiş doğal özellikleri gösterilmez. Harita stiliniz için Google Haritalar gelişmiş doğal özellikler desteğini kullanmak istiyorsanız bir harita Stili oluşturmanız gerekir.

Bulut tabanlı harita stili, harita kimliği oluşturulduktan sonra kodunuzda değişiklik yapmanıza gerek kalmadan, Google Haritalar'ı kullanan herhangi bir uygulama için harita stili oluşturmanıza ve düzenlemenize olanak tanır. Tüm stil değişiklikleri Cloud Console'da yapılabilir. Kodlama bilgisine sahip olmanız gerekmez. Yollar, binalar, su kütleleri, önemli noktalar ve toplu taşıma rotaları gibi birçok harita öğesinin görünümünü ve rengini değiştirin.

Bu özellikler şunlardır:

  • Bulut tabanlı harita stili: Haritalarınızı kod kullanarak JSON kullanarak biçimlendirmek yerine, dinamik veya statik haritalarınızı harita kimlikleri ve harita stilleri kullanarak yönetin ve stilini belirleyin.
  • Vektör Haritası: JavaScript geliştiricileri, maps.google.com adresinde doğrudan kendi web uygulamalarında bulunan WebGL destekli hızlandırılmış vektör tabanlı haritayı kullanmayı seçebilir.
  • İşletme ÖY filtrelemesi: Beş önemli yer noktası kategorisi, harita görünümünden isteğe bağlı olarak kaldırılabilir.
  • ÖY Yoğunluk Kontrolü: Temel haritada gösterilen önemli noktaların yoğunluğu varsayılan olarak daha fazla veya daha az önemli noktayı gösterecek şekilde ayarlanabilir.

Bulut tabanlı harita stili Android için Haritalar SDK'sı1, iOS için Haritalar SDK'sı, JavaScript ve Maps Static API'de kullanılabilir olsa da tüm özellikler tüm platformlarda görünmeyebilir.

Başlamadan önce

* Android için Haritalar SDK'sının yeni sürümüne geçin
Bulut tabanlı harita stili kullanmak istiyorsanız Android için Haritalar SDK'sının 18.0.0 veya sonraki bir sürümünü kullanmanız ve Android için en son Haritalar SDK'sını kullanmanız gerekir.

Faturalandırma

Bulut tabanlı harita stili kullanmak için bir harita kimliği gerekir. Android için Haritalar SDK'sı, iOS için Haritalar SDK'sı ve JavaScript'te harita kimliği kullanıldığında Dinamik Haritalar SKU'su için ücret alınır. Maps Static API'de harita kimliği kullanıldığında Statik Haritalar SKU'suna göre ücret alınır.

Örnekler

Android

ApiDemos örnek uygulamasını çalıştırın

ApiDemos örnek uygulamasını çalıştırmak için GitHub örneğine (Java | Kotlin) ve CloudBasedMapStylingDemoActivity demosuna ((Java | Kotlin) bakın.

Android haritanızın bulutta nasıl biçimlendirileceğini gösteren bir Java ve Kotlin örnek uygulaması bulabilirsiniz.

Bilinen Sorunlar

Uygulamanız müşterilere teslim edildikten sonra harita kimlikleri içeren haritalar için özel stiller Google Cloud Console'dan güncellenebilir. Yeni stiller birkaç saat içinde uygulamanıza yansıtılır.

Yeni özel stillerin test amacıyla hemen görünmesini sağlamak için test cihazınızdan uygulama verilerini temizleyin. Cihazınızdaki verileri temizleme hakkında daha fazla bilgi edinmek için Android Yardım - Yer Açma bölümüne bakın.

Ayarların telefona göre farklılık gösterebileceğini unutmayın. Daha fazla bilgi için cihaz üreticinize başvurun.

iOS

ApiDemos örnek uygulamasını çalıştırın

ApiDemos örnek uygulamasını çalıştırmak için GitHub örneğine GoogleMap örnek uygulamasına bakın ve CloudBasedMapStylingViewController projesini (Swift | Objective-C için GitHub örneği) görüntüleyin.

İsteğe bağlı Cloud Styling CocoaPod veya GitHub demosu

Sıfırdan başlamak yerine, iOS haritanızı buluttan nasıl biçimlendireceğinizi gösteren Objective-C örnek uygulamamızı buradan deneyebilirsiniz.

Beta demo uygulaması oluşturuluyor

Xcode'da, geçerli şemayı oluşturup çalıştırmak için derle düğmesine basın. Derleme bir hata oluşturarak API anahtarınızı SDKDemoAPIKey.h dosyasına girmenizi ister.

Henüz API anahtarınız yoksa Cloud Console'da proje oluşturmak ve API anahtarı almak için bu talimatları uygulayın. Anahtarı Cloud Console'da yapılandırırken anahtarı yalnızca uygulamanızın kullanabileceğinden emin olmak için uygulamanızın paket tanımlayıcısını belirtebilirsiniz. SDK örnekleri uygulamasının varsayılan paket tanımlayıcısı com.example.GoogleMapsDemos'dir.

SDKDemoAPIKey.h dosyasını düzenleyin ve API anahtarınızı kAPIKey sabit değerinin tanımına yapıştırın:

```
static NSString *const kAPIKey = @"YOUR_API_KEY";
```

Xcode, düzenlemek için SDKDemoAPIKey.h dosyasının kilidini açmanızı isterse Kilidi aç'ı seçin.

Aşağıdaki satırı kaldırın:

```
#error Register for API Key and insert here.
```

Projeyi oluşturun ve çalıştırın.

Bulut tabanlı haritalar stili harita demosu

CloudStyling demosu, Google Cloud Console'da ayarlanan bir stil kullanılarak haritanın stilinin nasıl ayarlanacağını gösterir.

Demo uygulaması başladığında, listenin en üstündeki Beta Örnekleri bölümünde Harita Özelleştirme demosunu tıklayın.

Farklı harita kimlikleri yüklemenin etkisini görmek için Stil Haritası'nı tıklayın.

Kendi stilinizi de eklemeyi deneyin ("Harita Stili" > "Yeni Harita Kimliği Ekle") ve harita güncellemesinin özel stil uygulanmış haritasıyla birlikte görünmesini sağlayın.

JavaScript

Bu, harita kimliği kullanarak özel bir stil içeren harita yüklemenin temel bir örneğidir. Bu durumda, Haritalar JavaScript, harita yüklendiğinde 8e0a97af9386fef harita kimliğine başvuruda bulunur ve şu anda bu harita kimliğiyle ilişkilendirilmiş harita stilini otomatik olarak uygular.

TypeScript

function initMap(): void {
  new google.maps.Map(
    document.getElementById("map") as HTMLElement,
    {
      mapId: "8e0a97af9386fef",
      center: { lat: 48.85, lng: 2.35 },
      zoom: 12,
    } as google.maps.MapOptions
  );
}

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

JavaScript

function initMap() {
  new google.maps.Map(document.getElementById("map"), {
    mapId: "8e0a97af9386fef",
    center: { lat: 48.85, lng: 2.35 },
    zoom: 12,
  });
}

window.initMap = initMap;
Örneği göster

Örneği Deneyin

Maps Static API

Harita kimliği, belirli bir harita stili veya özellikle ilişkili bir tanımlayıcıdır. Harita stilini yapılandırın ve Google Cloud Console'da harita kimliğiyle ilişkilendirin. Daha sonra, kodunuzdaki bir harita kimliğine başvurduğunuzda, bu haritanın ilişkili harita stili uygulamanızda gösterilir. Yapacağınız sonraki stil güncellemeleri, müşterileriniz tarafından güncelleme yapılmasına gerek kalmadan uygulamanızda otomatik olarak görünür.

  1. style parametresi ile özelleştirilmiş mevcut bir haritayla bulut tabanlı harita stili kullanıyorsanız gelecekteki işlevlerle ilgili olası çakışmaları önlemek için bunları kaldırdığınızdan emin olun.

  2. Web API'lerimizden birini kullanan yeni veya mevcut bir haritaya harita kimliği eklemek için map_id URL parametresini ekleyip harita kimliğiniz olarak ayarlayın. Bu örnekte, Maps Static API'yi kullanarak bir haritaya harita kimliği eklemek gösterilmektedir.

    <img src="https://maps.googleapis.com/maps/api/staticmap?center=Brooklyn+Bridge,New+York,NY&zoom=13&size=600x300&maptype=roadmap&markers=color:blue%7Clabel:S%7C40.702147,-74.015794&markers=color:green%7Clabel:G%7C40.711614,-74.012318&markers=color:red%7Clabel:C%7C40.718217,-73.998284&key=YOUR_API_KEY&map_id=YOUR_MAP_ID&signature=YOUR_SIGNATURE" />
    


  1. Bulut tabanlı harita stili Android'in Basit modunda kullanılamaz.