كيفية إنشاء أرقام تعريف الخرائط

اختيار النظام الأساسي: Android Android 3D iOS iOS 3D JavaScript Web Service

معرّف الخريطة هو معرّف فريد يمثّل إعدادات تصميم الخريطة وإعدادات الضبط في "خرائط Google" المخزّنة في Google Cloud. يمكنك استخدام معرّفات الخرائط لتفعيل الميزات أو إدارة الخرائط أو تصميمها على مواقعك الإلكترونية وفي تطبيقاتك. يمكنك إنشاء معرّفات خرائط لكل نظام أساسي تحتاجه، مثل JavaScript أو Android أو iOS أو الخرائط الثابتة، في مشروعك على وحدة تحكّم Google Cloud في صفحة إدارة الخرائط.

لمزيد من التفاصيل والميزات التي تستخدم معرّفات الخرائط، يُرجى الاطّلاع على نظرة عامة على معرّف الخريطة.

الأذونات المطلوبة

لإنشاء أي معرّفات خرائط أو إدارتها في مشروعك، يجب استخدام كيان أساسي لديه الأذونات المناسبة على مستوى الدور، أي دور "محرِّر" أو "مالك"، في صفحة "إدارة الهوية وإمكانية الوصول" في Cloud Console للمشروع. لمعرفة التفاصيل، يُرجى الاطّلاع على مرجع الأدوار الأساسية والمحدّدة مسبقًا في "إدارة الهوية وإمكانية الوصول".

إنشاء معرّفات الخرائط

يمكنك إنشاء معرّفات الخرائط في Cloud Console باتّباع الخطوات التالية:

  1. سجِّل الدخول إلى مشروع على Cloud Console وافتحه باستخدام الأذونات المطلوبة .

  2. في Cloud Console، انتقِل إلى صفحة إدارة الخرائط.

  3. انقر على إنشاء معرّف خريطة.

    إنشاء معرّف خريطة جديد

  4. في صفحة إنشاء معرّف خريطة جديد ، اتّبِع الخطوات التالية:

    1. في حقل الاسم، أدخِل اسمًا لمعرّف الخريطة.
    2. اختياري: في حقل الوصف، صف ما يُستخدم فيه معرّف الخريطة.
    3. في حقل نوع الخريطة، اختَر النظام الأساسي الذي تخطّط لاستخدام معرّف الخريطة عليه. إذا اخترت JavaScript، اختَر أيضًا نوع خريطة نقطية (الإعداد التلقائي) أو متّجهة. لمزيد من المعلومات عن الخرائط المتّجهة، يُرجى الاطّلاع على مقالة الخرائط المتّجهة.
    4. انقر على حفظ لعرض معرّف الخريطة الجديد.

ربط معرّف خريطة بنمط خريطة

إذا كنت تستخدم تصميم الخرائط باستخدام السحابة الإلكترونية، يمكنك ربط نمط خريطة بمعرّف الخريطة. لمعرفة التفاصيل، يُرجى الاطّلاع على مقالة ربط نمطك بمعرّف خريطة.

إضافة معرّف الخريطة إلى تطبيقك

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:

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، يمكنك إنشاء تطبيقك وتشغيله كالمعتاد. يتم تطبيق الأنماط المخصّصة التي تم ضبطها في الخطوة الأولى على جميع الخرائط التي تحمل معرّف الخريطة المحدّد.

Android 3D

يمكنك ضبط السمة mapId من نوع String على Map3DOptions آليًا أو باستخدام سمات التنسيق. يتم توفير Map3DOptions لكائن Map3DView أثناء الإنشاء ولا يمكن تغييرها بعد إنشاء Map3DView.

يمكنك إضافة معرّف خريطة، ما يؤدي إلى إنشاء الخريطة آليًا:

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 {
  fun onCreate(...) {
    val map3DOptions = Map3DOptions(mapMode = Map3DMode.HYBRID, mapId = "MAP_ID")
    val map3DView = Map3DView(context, map3DOptions)
    map3DView.getMap3dViewAsync(this)
  }
}

يمكنك إضافة معرّف خريطة باستخدام سمات التنسيق:

<?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

لإنشاء خريطة باستخدام معرّف خريطة، اتّبِع الخطوات التالية:

  1. أنشِئ GMSMapID باستخدام سلسلة معرّف الخريطة من Cloud Console.
  2. أنشِئ 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

لإنشاء خريطة باستخدام معرّف خريطة في الرمز البرمجي لتطبيقك:

  1. إذا كنت تخصّص خريطتك حاليًا باستخدام رمز JSON مضمّن، أزِل السمة styles من كائن MapOptions، وإلا يمكنك تخطّي هذه الخطوة.

  2. أضِف معرّف خريطة إلى الخريطة باستخدام السمة 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="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" />

خريطة تركّز على جسر بروكلين في مدينة نيويورك، نيويورك، الولايات المتحدة، مع عناصر تحكّم في الخريطة في أسفل يسار الصفحة تعرض الخريطة نمطًا مخصّصًا للطرق والمسطحات المائية والأراضي.

إذا كان لديك توقيع رقمي في عنوان URL الخاص بـ Maps Static قبل إضافة معرّف الخريطة، عليك إنشاء توقيع رقمي جديد وإضافته بعد إضافة معرّف الخريطة. عند إنشاء المفتاح السري لتوقيع روابط URL الجديد، تذكّر إزالة التوقيع الرقمي السابق من عنوان URL.