الوضع البسيط

يمكن لحزمة تطوير البرامج بالاستناد إلى بيانات "خرائط 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()" في الوضع البسيط.
الإيماءات
هل تتوفّر هذه الميزة؟ لا
لا يتيح الوضع البسيط استخدام الإيماءات. ولن يكون لتفعيل الإيماءات وإيقافها أي تأثير.
التجوّل الافتراضي
هل تتوفّر هذه الميزة؟ لا
لا يتم دعم التجوّل الافتراضي في الوضع البسيط.