Harita kimliklerini kullanma

Harita kimliği, bir Google Haritası örneğini temsil etmek için kullanılan benzersiz bir tanımlayıcıdır. Web sitelerinizde ve uygulamalarınızda harita kimliklerini kullanarak özellikleri etkinleştirebilir, haritaları yönetebilir veya haritalara stil uygulayabilirsiniz. Google Cloud Console projenizdeki Harita Yönetimi sayfasında ihtiyacınız olan her platform (JavaScript, Android, iOS veya Statik haritalar) için harita kimlikleri oluşturabilirsiniz.

Harita kimlikleriyle neler yapabilirsiniz?

Özellikleri ve stili etkinleştirmek için harita kimliklerini kullanın. Harita kimliklerinin nasıl kullanılacağına dair bazı örnekler aşağıda verilmiştir. Tam liste için Harita kimliklerini kullanan özellikler bölümüne bakın:

  • Bulut tabanlı harita stili: Google Cloud Console'u kullanarak haritalarınızı stilize etmek, özelleştirmek ve yönetmek için bir harita kimliğini bir harita stiliyle ilişkilendirin. Tüm platformlarda kullanılabilir: JavaScript, Android, iOS ve Maps Static API.

  • Vektör haritaları: WebGL kullanılarak istemci tarafında yükleme sırasında çizilen vektör tabanlı karolardan oluşan bir harita kullanmak için harita kimliği kullanın. JavaScript'te kullanılabilir.

  • Gelişmiş işaretçiler: Gelişmiş işaretçileri etkinleştirmek için bir harita kimliği kullanın. JavaScript, Android ve iOS'te kullanılabilir.

Bulut tabanlı harita stilleri örneği

Web sitenizdeki ve Android uygulamalarınızdaki haritalara stil uygulamak için bulut tabanlı harita stillerini kullanmak istiyorsanız aşağıdaki adımları uygulayın:

  1. Kullandığınız her platform için harita kimlikleri oluşturun. Örneğin, bir JavaScript ve Android harita kimliği oluşturun. Ayrıntılar için Harita kimlikleri oluşturma başlıklı makaleyi inceleyin.

  2. Google Cloud Console'da bir harita stili yapılandırın. Ayrıntılar için bulut tabanlı harita stilleri başlıklı makaleyi inceleyin.

  3. Her iki harita kimliğinizi de Google Cloud Console'da harita stiliyle ilişkilendirin. Ayrıntılar için Harita kimliklerini stilinizle ilişkilendirme başlıklı makaleyi inceleyin.

  4. Web sitenizin JavaScript'inde ve Android uygulama kodunuzda harita kimliğine referans verin. Ayrıntılı bilgi için Uygulamanıza harita kimliği ekleme başlıklı makaleyi inceleyin.

Harita kimliklerinizle ilişkilendirilen harita stili, web sitenizde ve Android uygulamanızda gösterilir. Cloud Console'da harita stilinizde güncellemeler yapabilirsiniz. Değişiklikler, müşterilerinizin uygulama güncellemesi yapmasına gerek kalmadan her iki yerde de otomatik olarak gösterilir.

Harita kimliklerini kullanan özellikler

Aşağıdaki tabloda, harita kimliklerini kullanan Google Haritalar Platformu özellikleri ve API'leri gösterilmektedir:

Özellik veya API Bu hedeflere ulaşmak için harita kimliklerini kullanır
Gelişmiş işaretçiler Gelişmiş işaretçileri etkinleştirin. Harita kimliği oluşturmanız gerekmez. Bunun yerine, demo harita kimliği olan "DEMO_MAP_ID"yi kullanabilirsiniz.
Sınırlar için veriye dayalı stil Harita kimliğini, haritayı sınırlara göre biçimlendirmek için bir dizi sınır ve stil ile ilişkilendirin.
Veri kümeleri için veriye dayalı stil Harita kimliğini bir veri kümesiyle ve stiliyle ilişkilendirerek haritayı veri kümesine göre biçimlendirin.
Flutter Flutter uygulamalarınızda kullanılan Google Haritalar'a stil uygulama
Maps Embed API Haritayı bir web sayfasına yerleştirilecek şekilde belirtin ve biçimlendirin.
Maps JavaScript API Haritayı bir web sayfasında gösterilecek şekilde biçimlendirin.
Android için Haritalar SDK'sı Haritayı Android uygulamasında gösterilecek şekilde biçimlendirin.1
iOS için Haritalar SDK'sı Haritayı iOS uygulamasında gösterilecek şekilde biçimlendirin.1
Maps Static API Haritayı statik resim olarak oluşturulacak şekilde belirtin ve biçimlendirin.
Mobilite çözümleri Hareketlilik çözümlerindeki haritalara stil uygulamak için Maps JavaScript API'yi ve Android ile iOS için SDK'ları kullanın.1
WebGL (Vektör haritalar) JavaScript vektör haritası kimliği kullanarak WebGL özelliklerini etkinleştirin.

1 Android için Haritalar SDK'sında veya iOS için Haritalar SDK'sında harita kimliği kullanmak, Dinamik Haritalar SKU'sundan ücretlendirilen bir harita yüklemesini tetikler.

Harita kimlikleri oluşturma ve kullanma

Harita kimliği, bir Google Haritası örneğini temsil eden benzersiz bir tanımlayıcıdır. Cloud Console'da harita kimlikleri oluşturur ve bir harita kimliğiyle ilişkili harita stilini güncelleyebilirsiniz.

Gerekli izinler

Projenizde harita kimlikleri oluşturmak veya yönetmek için projenin Cloud Console IAM sayfasında uygun rol düzeyinde izinlere (düzenleyici veya sahip) sahip bir asıl kullanıcı kullanmanız gerekir. Ayrıntılar için IAM temel ve önceden tanımlanmış roller referansı başlıklı makaleyi inceleyin.

Harita kimlikleri oluşturma

Cloud Console'da dilediğiniz zaman harita kimlikleri oluşturabilir ve harita kimliğiyle ilişkili bir stili güncelleyebilirsiniz.

Harita kimliği oluşturmak için aşağıdaki adımları uygulayın:

  1. Gerekli izinlere sahip bir Cloud Console projesinde oturum açın ve projeyi açın.

  2. Cloud Console'da Harita Yönetimi sayfasına gidin.

  3. Harita kimliği oluştur'u seçin.

    Yeni Harita Kimliği Oluşturma

  4. Yeni harita kimliği oluştur sayfasında aşağıdakileri yapın:

    1. Ad alanına harita kimliğine bir ad verin.
    2. İsteğe bağlı: Açıklama bölümünde, harita kimliğinin ne için kullanıldığını açıklayın.
    3. Harita türü için harita kimliğini kullanmayı planladığınız platformu seçin. JavaScript'i seçerseniz bir raster (varsayılan) veya vektor harita türü de seçin. Vektör haritalar hakkında daha fazla bilgi için Vektör Haritalar başlıklı makaleyi inceleyin.
    4. Yeni harita kimliğinizi göstermek için Kaydet'i seçin.

Harita kimliğini bir harita stiliyle ilişkilendirme

Bu talimatlarda, projenizde en az bir mevcut harita stili olduğu varsayılır. Harita stiliniz yoksa Bulut tabanlı harita stili bölümüne bakın ve nasıl oluşturacağınızla ilgili talimatlar için platformunuzu seçin.

  1. Cloud Console'da Haritalar Yönetimi sayfasına gidin.
  2. Tablodan mevcut bir harita kimliği seçin.
  3. İlişkili harita stili bölümünde bir harita stili seçin.
  4. Kaydet'i seçin.

    Bir harita stilini ilişkilendirdiğiniz harita kimliği ayrıntılar sayfası

Harita kimliğini uygulamanıza ekleme

Yapay Zeka

Harita kimliğinizi, MapView sınıfını kullanarak etkinliğin düzen dosyasında bir <fragment> öğesi aracılığıyla veya GoogleMapOptions sınıfını kullanarak programatik olarak ekleyin.

Örneğin, res/values/strings.xml alanında map_id adlı bir dize değeri olarak depolanan bir harita kimliği oluşturduğunuzu varsayalım:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">MAP_ID</string>
</resources>

Etkinliğin düzen dosyasında bir <fragment> öğesi aracılığıyla eklenen haritalar için özel stile sahip olması gereken tüm harita parçaları, map:mapId özelliğinde harita kimliğini belirtmelidir:

<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
    map:name="com.google.android.gms.maps.SupportMapFragment"
        map:mapId="@string/map_id" />

Harita kimliğini belirtmek için MapView sınıfının map:mapId özelliğini de kullanabilirsiniz:

<com.google.android.gms.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    ....
    map:mapId="@string/map_id" />

Bir harita kimliğini programatik olarak belirtmek için GoogleMapOptions sınıfını kullanarak MapFragment örneğine iletin:

Java

 MapFragment mapFragment = MapFragment.newInstance(
     new GoogleMapOptions()
         .mapId(getResources().getString(R.string.map_id)));

Kotlin

 val mapFragment = MapFragment.newInstance(
     GoogleMapOptions()
         .mapId(resources.getString(R.string.map_id))
 )

Android Studio'da uygulamanızı normalde yaptığınız gibi derleyin ve çalıştırın. İlk adımda yapılandırılan özel stiller, belirtilen harita kimliğine sahip tüm haritalara uygulanır.

iOS

Harita kimliğini kullanarak bir harita örneği oluşturmak için aşağıdakileri yapın:

  1. Cloud Console'dan harita kimliği dizesini kullanarak bir GMSMapID oluşturun.
  2. Yeni oluşturduğunuz harita kimliğini belirten bir GMSMapView oluşturun.

Swift

let camera = GMSCameraPosition(latitude: 47.0169, longitude: -122.336471, zoom: 12)
let mapID = GMSMapID(identifier: "MAP_ID")
let mapView = GMSMapView(frame: .zero, mapID: mapID, camera: camera)
self.view = mapView

Objective-C

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:47.0169
                                                        longitude:-122.336471
                                                             zoom:12];
GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:mapID camera:camera];
self.view = mapView;

Kendi harita kimliğinizi kullanıyorsanız Cloud Console'da harita kimliğinizi dilediğiniz zaman yeni bir tarza ayarlayabilirsiniz. Bu stil, yaklaşık altı saat içinde hem sizin hem de kullanıcıların harita görünümüne otomatik olarak yansıtılır.

Değişiklikleri hemen görmek istiyorsanız uygulamadan çıkıp son kullanılan uygulamalar listesinden uygulamayı kapatarak zorla çıkabilir ve ardından uygulamayı yeniden açabilirsiniz. Güncellenen harita görünür hale gelir.

JavaScript

Uygulama kodunuzda harita kimliği içeren bir harita oluşturmak için:

  1. Haritanızı yerleşik JSON koduyla özelleştiriyorsanız MapOptions nesnenizdeki styles mülkünü kaldırın. Aksi takdirde bu adımı atlayın.

  2. mapId mülkünü kullanarak haritaya bir harita kimliği ekleyin. Örneğin:

map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8,
mapId: 'MAP_ID'
});

Maps Static

Web hizmeti API'lerimizden birini kullanan yeni veya mevcut bir haritaya harita kimliği eklemek için map_id URL parametresini ekleyin ve harita kimliğinize ayarlayın. Bu örnekte, Maps Static API kullanılarak bir haritaya harita kimliği ekleme 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=MAP_ID&signature=YOUR_SIGNATURE" />

Sağ alt köşede harita kontrolleri bulunan, ABD, New York, New York City&#39;deki Brooklyn Köprüsü&#39;nün ortasına yerleştirilmiş bir harita. Harita, yollarda, sularda ve arazide özel stil gösterir.

Harita kimliğinizi eklemeden önce Haritalar statik URL'nizde dijital imza varsa harita kimliğinizi ekledikten sonra yeni bir dijital imza oluşturmanız ve eklemeniz gerekir. Yeni URL imzalama gizliliğinizi oluştururken önceki dijital imzanızı URL'den kaldırmayı unutmayın.