تصميم الخرائط المستنِد إلى السحابة الإلكترونية

يوفر نظام Google Maps Platform ميزات تصميم الخرائط المستندة إلى السحاب، والتي تجعل من السهل تصميم خرائطك وتخصيصها وإدارتها باستخدام Google Cloud Console، مما يسمح لك بإنشاء تجربة خرائط مخصصة للمستخدمين دون الحاجة إلى تحديث شفرة تطبيقاتك في كل مرة تجري فيها تغييرًا على النمط.

ولن تعرض الأنماط التي تم إنشاؤها قبل 15 أيلول (سبتمبر) 2020 الميزات الطبيعية المحسّنة في "خرائط Google". لاستخدام دعم الميزات الطبيعية المحسّنة في خرائط Google لنمط الخريطة، يجب إنشاء نمط على الخريطة.

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

وتشمل هذه الميزات ما يلي:

  • تصميم الخريطة المستنِدة إلى السحابة الإلكترونية: بدلاً من تصميم الخريطة في رمز باستخدام JSON، يمكنك إدارة خرائطك الديناميكية أو الثابتة وتحديد نمطها في Cloud Console باستخدام أرقام تعريف الخرائط وأنماط الخرائط.
  • خريطة المتجهات: يمكن لمطوّري برامج JavaScript اختيار استخدام الخريطة المستندة إلى المتّجه المسرَّعة نفسها المتوفّرة على maps.google.com مباشرةً في تطبيقات الويب الخاصة بهم.
  • فلترة نقاط الاهتمام للنشاط التجاري: يمكن بشكل اختياري إزالة خمس فئات من نقاط النشاط التجاري محل الاهتمام من عرض الخريطة.
  • التحكم في كثافة نقطة الاهتمام: يمكن ضبط كثافة نقاط الاهتمام المعروضة على الخريطة الأساسية لعرض نقاط اهتمام أكبر أو أقل بشكل تلقائي.

على الرغم من توفُّر نمط الخرائط المستنِد إلى السحابة الإلكترونية على SDK للخرائط المتوفّرة في نظام التشغيل Android1 و SDK للخرائط المتوفّرة لنظام التشغيل iOS وJavaScript وواجهة برمجة التطبيقات للخرائط الثابتة، لن تظهر جميع الميزات على جميع الأنظمة الأساسية.

قبل البدء

  • إنشاء رقم تعريف خريطة
    لاستخدام تصميم الخرائط المستندة إلى السحابة الإلكترونية، يجب تحميل خريطتك باستخدام رقم تعريف الخريطة.
  • الترحيل من النمط غير الثابت
    قبل إضافة معرّف خريطة لاستخدام نمط الخرائط المستندة إلى السحابة الإلكترونية على خريطة حالية تم تخصيصها باستخدام نمط ثابت، مثل معلمات JSON أو معلمات طلب البحث في عنوان URL، ننصحك بإزالة النمط غير الثابت لتجنّب أي تعارض محتمل مع الوظائف المستقبلية. يمكنك استيراد نمط JSON إلى نمط خريطة جديد.
  • الإذن بالوصول إلى الفوترة

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

    أمثلة

    Android

    تشغيل نموذج تطبيق ApiDemos

    لتشغيل نموذج تطبيق ApiDemos، اطلع على نموذج GitHub (Java | Kotlin) وشاهد العرض التوضيحي CloudBasedMapStylingDemoActivity (Java | Kotlin).

    يمكنك العثور على نموذج تطبيق على Java وKotlin يوضح كيفية تصميم خريطة Android على السحابة الإلكترونية.

    المشاكل المعروفة

    بعد تسليم تطبيقك للعملاء، يمكن تحديث الأنماط المخصصة للخرائط التي تتضمن أرقام تعريف الخرائط من Google Cloud Console. ستظهر الأنماط الجديدة في تطبيقك خلال بضع ساعات.

    للتأكد من ظهور الأنماط المخصصة الجديدة على الفور لأغراض الاختبار، امسح بيانات التطبيق من جهاز الاختبار. لمزيد من المعلومات حول محو البيانات من جهازك، راجع مساعدة Android - إخلاء بعض المساحة.

    لاحظ أن الإعدادات قد تختلف باختلاف الهاتف. للمزيد من المعلومات، يمكنك التواصل مع الشركة المصنّعة لجهازك.

    iOS

    تشغيل نموذج تطبيق ApiDemos

    لتشغيل نموذج تطبيق ApiDemos، راجع نموذج GitHub تطبيق نموذج GoogleMap وعرض مشروع CloudBasedMapStylingViewController (نموذج GitHub لـ Swift | Goal-C).

    عرض توضيحي اختياري لنمط CocoaPod في السحابة الإلكترونية أو GitHub

    بدلاً من البدء من نقطة الصفر، يمكنك تجربة نموذج تطبيق Goal-C الذي يوضح كيفية تصميم خريطة iOS من السحاب هنا.

    إنشاء تطبيق تجريبي

    في Xcode، اضغط على زر التجميع لإنشاء المخطط الحالي وتشغيله. ينتج عن الإصدار خطأ يطلب منك إدخال مفتاح واجهة برمجة التطبيقات في ملف SDKDemoAPIKey.h.

    إذا لم يكن لديك مفتاح API حتى الآن، اتّبِع هذه التعليمات لإعداد مشروع على Cloud Console والحصول على مفتاح واجهة برمجة تطبيقات. عند ضبط المفتاح في Cloud Console، يمكنك تحديد معرِّف حزمة تطبيقك للتأكُّد من عدم استخدام التطبيق إلّا لتطبيقك. رقم تعريف الحزمة التلقائي لنموذج عينات SDK هو com.example.GoogleMapsDemos.

    عدّل الملف SDKDemoAPIKey.h والصق مفتاح واجهة برمجة التطبيقات في تعريف ثابت kAPIKey:

    ```
    static NSString *const kAPIKey = @"YOUR_API_KEY";
    ```
    

    إذا طالبك Xcode بإلغاء قفل ملف SDKDemoAPIKey.h لتعديله، اختَر إلغاء القفل.

    إزالة السطر التالي:

    ```
    #error Register for API Key and insert here.
    ```
    

    أنشئ المشروع وشغّله.

    إصدار تجريبي لخريطة نمط مستندة إلى السحابة الإلكترونية

    يعرض العرض التوضيحي لـ CloudStyling طريقة تصميم الخريطة باستخدام مجموعة أنماط على Google Cloud Console.

    عند تشغيل التطبيق التجريبي، انقر على العرض التوضيحي "تخصيص الخريطة" في القسم "عينات تجريبي" أعلى القائمة.

    انقر على خريطة النمط لمعرفة تأثير تحميل أرقام تعريف خرائط مختلفة.

    يمكنك تجربة إضافة نمطك أيضًا ("خريطة النمط" > "إضافة رقم تعريف خريطة جديد")، ومشاهدة تحديث الخريطة بخريطتك المخصصة.

    JavaScript

    وهذا مثال أساسي لتحميل خريطة ذات أنماط مخصصة باستخدام معرف خريطة. في هذه الحالة، يشير رمز JavaScript للخرائط إلى معرّف الخريطة 8e0a97af9386fef عند تحميل الخريطة، ويطبّق تلقائيًا نمط الخريطة المرتبط حاليًا برقم تعريف الخريطة هذا.

    TypeScript

    function initMap(): void {
      new google.maps.Map(
        document.getElementById("map") as HTMLElement,
        {
          mapId: "8e0a97af9386fef",
          center: { lat: 48.85, lng: 2.35 },
          zoom: 12,
        } as google.maps.MapOptions
      );
    }
    
    declare global {
      interface Window {
        initMap: () => void;
      }
    }
    window.initMap = initMap;

    JavaScript

    function initMap() {
      new google.maps.Map(document.getElementById("map"), {
        mapId: "8e0a97af9386fef",
        center: { lat: 48.85, lng: 2.35 },
        zoom: 12,
      });
    }
    
    window.initMap = initMap;
    عرض مثال

    تجربة النموذج

    Maps Static API

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

    1. إذا كنت تستخدم نمط الخرائط المستندة إلى السحابة الإلكترونية مع خريطة حالية تم تخصيصها باستخدام المعلمة style، احرص على إزالتها لتجنب التعارض المحتمل مع الوظائف المستقبلية.

    2. لإضافة معرّف خريطة إلى خريطة جديدة أو حالية تستخدم إحدى واجهات برمجة تطبيقات الويب التابعة لنا، يمكنك إضافة معلمة عنوان URL map_id وضبطها على رقم تعريف خريطتك. يوضح هذا المثال إضافة رقم تعريف خريطة إلى خريطة باستخدام واجهة برمجة تطبيقات الخرائط الثابتة.

      <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=YOUR_MAP_ID&signature=YOUR_SIGNATURE" />
      


    1. لا يتوفر نمط الخرائط المستندة إلى السحاب في الوضع البسيط على Android.