الوضع البسيط

يمكن لحزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" لنظام التشغيل Android عرض صورة نقطية للخريطة، ما يوفّر تفاعلاً محدودًا للمستخدم. ويُطلَق على ذلك خريطة الوضع البسيط.

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

يتضمن مستودع ApiDemos على GitHub نماذج توضح استخدام الوضع البسيط:

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

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

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

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

يستخدم الوضع البسيط الفئات والواجهات نفسها مثل واجهة برمجة التطبيقات الكاملة لنظام التشغيل Android لخرائط Google. يمكنك ضبط 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);

      

للحصول على تفاصيل حول تحديد الحالة الأولية للخريطة، يمكنك الاطّلاع على دليل كائن الخريطة.

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

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

عندما ينقر المستخدم على الخريطة، تبدأ واجهة برمجة التطبيقات تشغيل تطبيق "خرائط Google" المتوافق مع الأجهزة الجوّالة. ويمكنك إلغاء هذا الإجراء باستخدام 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.
أنماط الخرائط الأساسية المخصّصة
متوافق؟ جزئيًا
تتوافق حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل Android مع التصميم المخصّص للخريطة الأساسية. لا يتوافق "الوضع البسيط" إلا مع الأنماط المخصّصة المستندة إلى JSON، ولا يتيح الأنماط المستندة إلى السحابة الإلكترونية التي تتطلب رقم تعريف خريطة لعرض خريطة ذات تصميم معيّن.
Markers
متوافق؟ جزئيًا
يمكنك إضافة علامة والردّ على حدث ناتج عن النقر. يمكنك أيضًا إضافة رموز علامات مخصّصة. لا يمكن جعل العلامة قابلة للسحب. تكون العلامات على خريطة الوضع البسيط مسطحة ولا يمكن تدويرها.
موضع الكاميرا والتكبير/التصغير والرسوم المتحركة
متوافق؟ جزئيًا

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

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

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

يتيح الوضع البسيط استخدام GoogleMap.setOnMapClickListener() وGoogleMap.setOnMapLongClickListener().

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

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

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