معرّف الخريطة هو معرّف فريد يمثّل إعدادات تصميم "خرائط Google" وإعدادات الضبط المخزّنة في Google Cloud. يمكنك استخدام معرّفات الخرائط لتفعيل الميزات أو إدارة الخرائط أو تصميمها على مواقعك الإلكترونية وفي تطبيقاتك. يمكنك إنشاء معرّفات خرائط لكل نظام أساسي تحتاجه، مثل JavaScript أو Android أو iOS أو الخرائط الثابتة، في مشروعك على Google Cloud Console في صفحة إدارة الخرائط.
لمزيد من التفاصيل والميزات التي تستخدم معرّفات الخرائط، يُرجى الاطّلاع على نظرة عامة على معرّف الخريطة.
الأذونات المطلوبة
لإنشاء أي معرّفات خرائط أو إدارتها في مشروعك، يجب استخدام كيان أساسي لديه الأذونات المناسبة على مستوى الدور، مثل دور "محرِّر" أو "مالك"، في صفحة "إدارة الهوية وإمكانية الوصول" في Cloud Console للمشروع. لمعرفة التفاصيل، يُرجى الاطّلاع على مرجع الأدوار الأساسية والمحدّدة مسبقًا في "إدارة الهوية وإمكانية الوصول".
إنشاء معرّفات الخرائط
يمكنك إنشاء معرّفات الخرائط في Cloud Console باتّباع الخطوات التالية:
سجِّل الدخول إلى مشروع على Cloud Console وافتحه باستخدام الأذونات المطلوبة .
في Cloud Console، انتقِل إلى صفحة إدارة الخرائط.
انقر على إنشاء معرّف خريطة.
في صفحة إنشاء معرّف خريطة جديد ، اتّبِع الخطوات التالية:
- في حقل الاسم، أدخِل اسمًا لمعرّف الخريطة.
- اختياري: في حقل الوصف، صف ما يُستخدم فيه معرّف الخريطة.
- في حقل نوع الخريطة، اختَر النظام الأساسي الذي تخطط لاستخدام معرّف الخريطة عليه. إذا اخترت JavaScript، اختَر أيضًا نوع خريطة نقطية (الإعداد التلقائي) أو اتجاهية. لمزيد من المعلومات عن الخرائط الاتجاهية، يُرجى الاطّلاع على مقالة الخرائط الاتجاهية.
- انقر على حفظ لعرض معرّف الخريطة الجديد.
ربط معرّف خريطة بنمط خريطة
إذا كنت تستخدم تصميم الخرائط باستخدام السحابة الإلكترونية، يمكنك ربط نمط خريطة بمعرّف الخريطة. لمعرفة التفاصيل، يُرجى الاطّلاع على مقالة ربط نمطك بمعرّف خريطة.
إضافة معرّف الخريطة إلى تطبيقك
Android
يمكنك إضافة معرّف الخريطة من خلال عنصر <fragment> في
ملف تنسيق النشاط، أو باستخدام فئة MapView، أو بشكل آلي
باستخدام فئة GoogleMapOptions.
على سبيل المثال، لنفترض أنّك أنشأت معرّف خريطة مخزّنًا كقيمة سلسلة باسم map_id في res/values/strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">MAP_ID</string>
</resources>
بالنسبة إلى الخرائط التي تتم إضافتها من خلال عنصر <fragment> في ملف تنسيق النشاط،
يجب أن تحدّد جميع أجزاء الخريطة التي يجب أن تتضمّن النمط المخصّص معرّف الخريطة في السمة map:mapId
<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
map:name="com.google.android.gms.maps.SupportMapFragment"
…
map:mapId="@string/map_id" />
يمكنك أيضًا استخدام السمة map:mapId لفئة MapView لتحديد معرّف خريطة:
<com.google.android.gms.maps.MapView
xmlns:map="http://schemas.android.com/apk/res-auto"
....
map:mapId="@string/map_id" />
لتحديد معرّف خريطة بشكل آلي، يمكنك تمريره إلى مثيل MapFragment باستخدام فئة GoogleMapOptions:
جافا
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، يمكنك إنشاء تطبيقك وتشغيله كالمعتاد. يتم تطبيق الأنماط المخصّصة التي تم ضبطها في الخطوة الأولى على جميع الخرائط التي تتضمّن معرّف الخريطة المحدّد.
Android 3D
يمكنك ضبط السمة mapId من النوع String على Map3DOptions بشكل آلي أو باستخدام سمات التنسيق. يتم توفير Map3DOptions لكائن Map3DView أثناء الإنشاء ولا يمكن تغييرها بعد إنشاء Map3DView.
يمكن للمطوّرين اختياريًا تنفيذ OnMapIdErrorListener جديد لتلقّي إشعار بمعرّف خريطة غير صالح أو غير متوفّر والردّ عليه.
يمكنك إضافة معرّف خريطة وإنشاء الخريطة بشكل آلي وضبط OnMapIdErrorListener:
import com.google.android.gms.maps3d.GoogleMap3D
import com.google.android.gms.maps3d.Map3DOptions
import com.google.android.gms.maps3d.Map3DView
import com.google.android.gms.maps3d.OnMap3DViewReadyCallback
import com.google.android.gms.maps3d.model.Map3DMode
class MainActivity : Activity(), OnMap3DViewReadyCallback, OnMapIdError {
fun onCreate(...) {
val map3DOptions = Map3DOptions(mapMode = Map3DMode.HYBRID, mapId = "MAP_ID")
val map3DView = Map3DView(context, map3DOptions)
map3DView.getMap3dViewAsync(this)
}
override fun onMap3DViewReady(googleMap3D: GoogleMap3D) {
googleMap3D.setMapIdErrorListener(
object : OnMapIdErrorListener {
override fun onMapIdError() {
// Handle error event.
}
}
)
}
}
يمكنك إضافة معرّف خريطة باستخدام سمات التنسيق:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map3d="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_height="match_parent">
<com.google.android.gms.maps3d.Map3DView
android:id="@+id/map3dView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
map3d:mode="hybrid"
map3d:mapId="MAP_ID"/>
</LinearLayout>
iOS
لإنشاء خريطة باستخدام معرّف خريطة، اتّبِع الخطوات التالية:
- أنشئ
GMSMapIDباستخدام سلسلة معرّف الخريطة من Cloud Console. - أنشئ
GMSMapViewمع تحديد معرّف الخريطة الذي أنشأته للتو.
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;
إذا كنت تستخدم معرّف الخريطة الخاص بك، يمكنك ضبط معرّف الخريطة في Cloud Console لاستخدام نمط جديد في أي وقت، وسيظهر هذا النمط في طريقة عرض الخريطة تلقائيًا لك وللمستخدمين في غضون ست ساعات تقريبًا.
إذا أردت الاطّلاع على التغييرات على الفور، يمكنك إغلاق تطبيقك وإعادة تشغيله من خلال الخروج منه وإيقافه نهائيًا من قائمة التطبيقات التي تم استخدامها مؤخرًا ثم إعادة فتحه. بعد ذلك، ستظهر الخريطة المعدَّلة.
iOS 3D
يمكن لمطوّري iOS ضبط معدِّل style جديد على Map. يقبل هذا المعدِّل معرّف خريطة وإغلاقًا اختياريًا يتم استدعاؤه عندما يكون معرّف الخريطة غير صالح أو غير متوفّر.
import SwiftUI
import GoogleMaps3D
struct ContentView: View {
init () {
Map.apiKey = "YOUR_API_KEY"
}
var body: some View {
Map(initialCamera: .init(
latitude: 0.0,
longitude: 0.0,
),
mode: .hybrid
)
.style(
with: "MAP_ID",
error: {
// Handle styling error.
}
)
// Could also use trailing closure syntax
// .style(with: "MAP_ID") {
// // Handle styling error.
// }
}
}
JavaScript
لإنشاء خريطة باستخدام معرّف خريطة في الرمز البرمجي لتطبيقك:
إذا كنت تخصّص خريطتك حاليًا باستخدام رمز JSON مضمّن، عليك إزالة السمة
stylesproperty من كائنMapOptionsobject، وإلا يمكنك تخطّي هذه الخطوة.أضِف معرّف خريطة إلى الخريطة باستخدام السمة
mapId. على سبيل المثال:
map = new google.maps.Map(document.getElementById('map'), { center: {lat: -34.397, lng: 150.644}, zoom: 8, mapId: 'MAP_ID' });
Javascript 3D
لإنشاء خريطة باستخدام معرّف خريطة في تطبيقك، أضِف معرّف خريطة إلى الخريطة باستخدام السمة mapId. على سبيل المثال:
async function init() { const { Map3DElement } = await google.maps.importLibrary('maps3d'); const map = new Map3DElement({ center: { lat: 37.75183154601466, lng: -119.52369070507672, altitude: 2200, }, tilt: 67.5, heading: 108.94057782079429, range: 6605.57279990986, mapId: 'bcce776b92de1336e22c569f', // Styles are associated with map IDs. mode: 'HYBRID', }); document.body.append(map); } void init();
Maps Static
لإضافة معرّف خريطة إلى خريطة جديدة أو حالية تستخدم إحدى واجهات برمجة تطبيقات خدمة الويب، ألحِق مَعلمة عنوان URL map_id واضبطها على معرّف الخريطة. يوضّح هذا المثال كيفية إضافة معرّف خريطة إلى خريطة باستخدام Maps Static API.
<img src="/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=%3Cspan%20data-devsite-credential-type="api_key" class="replaceable-credential">YOUR_API_KEY&map_id=MAP_ID&signature=YOUR_SIGNATURE" />