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

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

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

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

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

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

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

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

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

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

  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:

جافا

 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 الثابت لـ &quot;خرائط Google&quot; قبل إضافة معرّف الخريطة، عليك إنشاء توقيع رقمي جديد وإضافته بعد إضافة معرّف الخريطة. عند إنشاء سر جديد لتوقيع عنوان URL، تذكَّر إزالة التوقيع الرقمي السابق من عنوان URL.