الوضع البسيط

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

عيّنات تعليمات برمجية

يتضمّن مستودع ApiDemos على GitHub عيّنات توضّح كيفية استخدام الوضع الخفيف:

نظرة عامة على "الوضع البسيط"

خريطة الوضع الخفيف هي صورة نقطية لخريطة في موقع جغرافي ومستوى تكبير/تصغير محدّدَين. يتوافق الوضع الخفيف مع جميع أنواع الخرائط (العادية والمختلطة والأقمار الصناعية والتضاريس) ومجموعة فرعية من الوظائف التي توفّرها واجهة برمجة التطبيقات الكاملة. يكون "الوضع الخفيف" مفيدًا عندما تريد توفير عدد من الخرائط في بث أو خريطة صغيرة جدًا لا تتيح تفاعلاً مفيدًا.

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

إضافة خريطة في الوضع البسيط

يستخدم "الوضع البسيط" الفئات والواجهات نفسها التي يستخدمها الإصدار الكامل من Google Maps Android API. يمكنك ضبط GoogleMap على الوضع الخفيف بالطرق التالية:

  • إما كسمة XML لـ MapView أو MapFragment
  • أو في العنصر GoogleMapOptions

كسمة XML لـ MapView أو MapFragment

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:name="com.google.android.gms.maps.MapFragment"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map:cameraZoom="13"
    map:mapType="normal"
    map:liteMode="true"/>

في العنصر GoogleMapOptions

Kotlin

val options = GoogleMapOptions()
    .liteMode(true)

      

Java

GoogleMapOptions options = new GoogleMapOptions()
    .liteMode(true);

      

للحصول على تفاصيل حول ضبط الحالة الأولية للخريطة، يُرجى الاطّلاع على دليل عنصر الخريطة.

أهداف إطلاق عرض خريطة أو طلب اتجاهات

يتضمّن شريط الأدوات تلقائيًا في أسفل يسار الخريطة رموزًا تتيح الوصول إلى عرض الخريطة أو طلب الاتجاهات في تطبيق &quot;خرائط Google&quot; للأجهزة الجوّالة. ويمكنك إيقاف شريط الأدوات من خلال استدعاء UiSettings.setMapToolbarEnabled(false). لمزيد من التفاصيل، يُرجى الاطّلاع على مستندات شريط الأدوات.

أيضًا، عندما ينقر المستخدم على الخريطة، تبدأ واجهة برمجة التطبيقات تلقائيًا تطبيق &quot;خرائط Google&quot; للأجهزة الجوّالة. ويمكنك إلغاء هذا الإجراء باستخدام GoogleMap.setOnMapClickListener() لضبط أداة معالجة الأحداث الخاصة بك. يمكنك أيضًا إيقاف أحداث النقر على الخريطة من خلال استدعاء setClickable() في العرض الذي يحتوي على MapView أو MapFragment. للاطّلاع على تفاصيل هاتين الطريقتين، راجِع مستندات الأحداث.

أحداث مراحل النشاط

عند استخدام واجهة برمجة التطبيقات في وضع التفاعل الكامل، على مستخدمي الفئة MapView إعادة توجيه جميع طرق دورة حياة النشاط إلى الطرق المقابلة في الفئة MapView. تشمل أمثلة طرق دورة الحياة onCreate() وonDestroy() وonResume() وonPause().

عند استخدام الفئة MapView في الوضع الخفيف، يكون توجيه أحداث مراحل النشاط اختياريًا، باستثناء الحالات التالية:

  • يجب طلب onCreate()، وإلا لن تظهر أي خريطة.
  • إذا أردت عرض نقطة "موقعي الجغرافي" على خريطة الوضع البسيط واستخدام مصدر الموقع الجغرافي التلقائي، عليك استدعاء onResume() وonPause()، لأنّ مصدر الموقع الجغرافي لن يتم تعديله إلا بين هاتين العمليتين. إذا كنت تستخدم مصدر الموقع الجغرافي الخاص بك، ليس من الضروري استدعاء هاتين الطريقتين.

ميزات واجهة برمجة التطبيقات المتوافقة

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

الوظائف
أنواع الخرائط
هل هو متاح؟ نعم
تتوفّر أنواع الخرائط التالية من خلال GoogleMapOptions.mapType() وGoogleMap.setMapType(): MAP_TYPE_NORMAL وMAP_TYPE_SATELLITE وMAP_TYPE_TERRAIN وMAP_TYPE_HYBRID وMAP_TYPE_NONE
الخطوط المتعددة والمضلّعات والدوائر
هل هو متاح؟ نعم
تتطابق وظيفة الوضع الخفيف للأشكال مع واجهة برمجة التطبيقات الكاملة.
الإسقاط
هل هو متاح؟ نعم
تتطابق وظيفة الوضع المخفّف في العرض مع واجهة برمجة التطبيقات الكاملة.
موقعي الجغرافي
هل هو متاح؟ نعم
تتطابق وظيفة الوضع الخفيف في طبقة "موقعي الجغرافي" مع واجهة برمجة التطبيقات الكاملة.
تحجيم الخريطة
هل هو متاح؟ نعم
يتوافق دعم الوضع البسيط لحشو الخريطة مع واجهة برمجة التطبيقات الكاملة.
نوافذ المعلومات
هل هو متاح؟ نعم
إذا ضبطت title() لعلامة، ستظهر نافذة المعلومات التلقائية عندما ينقر المستخدم على العلامة. يمكنك عرض نافذة المعلومات آليًا من خلال استدعاء showInfoWindow() على العلامة. يمكنك أيضًا إنشاء نوافذ معلومات مخصّصة من خلال واجهة InfoWindowAdapter.
أنماط الخريطة الأساسية المخصّصة
هل هو متاح؟ جزئيًا
تتيح حزمة تطوير البرامج بالاستناد إلى بيانات &quot;خرائط Google&quot; لنظام التشغيل Android تخصيص أنماط الخريطة الأساسية. لا يتيح "الوضع الخفيف" سوى التصميم المخصّص المستند إلى JSON، وليس التصميم المستند إلى السحابة الإلكترونية الذي يتطلّب معرّف خريطة لعرض خريطة مصمَّمة. لا يتيح الوضع البسيط أيضًا ضبط نظام ألوان الخريطة لاستخدام الوضع الداكن.
العلامات
هل هو متاح؟ جزئيًا
يمكنك إضافة علامة والردّ على حدث النقر. يمكنك أيضًا إضافة رموز مخصّصة للعلامات. لا يمكن جعل العلامة قابلة للسحب. تكون العلامات على الخريطة في الوضع البسيط مسطّحة، ولا يمكن تدويرها.
موضع الكاميرا ومستوى التكبير/التصغير والصورة المتحركة
هل هو متاح؟ جزئيًا

يمكنك ضبط هدف الكاميرا والتكبير، ولكن لا يمكنك ضبط الإمالة أو الاتجاه. يتم تقريب مستوى التكبير أو التصغير إلى أقرب عدد صحيح في الوضع الخفيف. سيؤدي الاتصال بـ GoogleMap.moveCamera() إلى عرض صورة أخرى للخريطة في الوضع الخفيف. لمزيد من المعلومات حول ضبط الكاميرا والتحكّم فيها، يُرجى الاطّلاع على تغيير طريقة العرض.

لن يؤدي الاتصال بـ GoogleMap.animateCamera() إلى تحريك الكاميرا. سيتم نقل عرض الكاميرا على الفور إلى الموضع الجديد.

ربط الأحداث
هل هو متاح؟ جزئيًا

يتوافق "الوضع البسيط" مع GoogleMap.setOnMapClickListener() و GoogleMap.setOnMapLongClickListener().

لإيقاف أحداث النقر على خريطة في الوضع الخفيف، يمكنك استدعاء setClickable() في العرض الذي يحتوي على MapView أو MapFragment. ويكون ذلك مفيدًا، على سبيل المثال، عند عرض خريطة أو خرائط في عرض قائمة، حيث تريد أن يؤدي حدث النقر إلى تنفيذ إجراء غير مرتبط بالخريطة.

للحصول على التفاصيل، راجِع مستندات الأحداث.

الخرائط الداخلية والمباني
هل هو متاح؟ لا
سيعرض &quot;الوضع البسيط&quot; المربّعات نفسها التي تعرضها Maps Static API. وهذا يعني أنّه إذا كانت الخريطة الداخلية مضمّنة في المربّع التلقائي، ستظهر. وفي حال عدم توفّرها، لن يتم عرضها. بالإضافة إلى ذلك، لا يمكنك تغيير المستوى المعروض أو التلاعب بأداة اختيار المستوى.
طبقة حركة المرور
هل هو متاح؟ لا
لا تتوافق GoogleMap.setTrafficEnabled() مع الوضع البسيط.
تراكبات الأرض
هل هو متاح؟ لا
لا تتوافق GoogleMap.addGroundOverlay() مع الوضع الخفيف.
تراكب مربّعات
هل هو متاح؟ لا
لا تتوافق GoogleMap.addTileOverlay() مع الوضع الخفيف.
الإيماءات
هل هو متاح؟ لا
لا يتيح "الوضع البسيط" استخدام الإيماءات. لن يكون لتفعيل الإيماءات وإيقافها أي تأثير.
التجوّل الافتراضي
هل هو متاح؟ لا
لا تتوافق ميزة التجوّل الافتراضي مع الوضع البسيط.