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 kimliklerini kullanan özellikler ve daha fazla ayrıntı için Harita kimliğine genel bakış başlıklı makaleyi inceleyin.
Gerekli izinler
Projenizde harita kimliği 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
Aşağıdaki adımları uygulayarak Cloud Console'da harita kimlikleri oluşturun:
Gerekli izinlere sahip bir Cloud Console projesinde oturum açın ve projeyi açın.
Cloud Console'da Haritalar Yönetimi sayfasına gidin.
Harita kimliği oluştur'u tıklayın.
Yeni harita kimliği oluştur sayfasında aşağıdakileri yapın:
- Ad alanına harita kimliğine bir ad verin.
- İsteğe bağlı: Açıklama bölümünde, harita kimliğinin ne için kullanıldığını açıklayın.
- 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.
- Yeni harita kimliğinizi göstermek için Kaydet'i tıklayın.
Harita kimliğini bir harita stiliyle ilişkilendirme
Bulut tabanlı harita stillerini kullanıyorsanız bir harita stilini harita kimliğinizle ilişkilendirirsiniz. Ayrıntılı bilgi için Bir başlıklı makaleyi inceleyin.
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 harita örneği oluşturmak için aşağıdakileri yapın:
- Cloud Console'dan harita kimliği dizesiyle bir
GMSMapID
oluşturun. - 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:
Haritanızı yerleşik JSON koduyla özelleştiriyorsanız
MapOptions
nesnenizdekistyles
mülkünü kaldırın. Aksi takdirde bu adımı atlayın.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" />