يتوفر عارض خرائط تمت ترقيته اعتبارًا من الإصدار 18.2.0 من حزمة SDK للخرائط لنظام التشغيل Android. ويوفّر هذا العارض العديد من التحسينات، من بينها التوافق مع أنماط الخرائط المستندة إلى السحابة الإلكترونية.
يوفر العارض الجديد المزايا التالية:
- تتوفّر ميزات تصميم الخرائط المستندة إلى السحابة الإلكترونية مع العارض الجديد.
- تتوفَّر تخصيصات الخطوط المتعددة المتقدّمة في العارض الجديد.
- تقليل حمل الشبكة ومعالجة الطلب واستهلاك الذاكرة.
- معالجة محسَّنة بالإيماءات للحصول على رسوم متحركة أفضل، بالإضافة إلى العرض الشامل والتكبير التصغير بسلاسة أكبر
- المزيد من الانتقالات السلسة وتصنيفات الخرائط الموضوعة بشكل واضح.
- تجربة مستخدم أكثر ثباتًا ومحسّنة
الجدول الزمني للطرح
في تشرين الأول (أكتوبر) 2021، بدأت Google بطرح عارض الخرائط الذي تمت ترقيته. وفي ذلك الوقت، قد تقرر الموافقة لبدء استخدام العارض الذي تمت ترقيته في تطبيقك.
مع إطلاق الإصدار 18.2.0 من حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل Android، نقلت Google العارض التلقائي من العارض القديم إلى عارض الخرائط الذي تمت ترقيته. مع الإصدار 18.2.0، يصبح عارض الخرائط المستخدَم عند إنشاء تطبيق جديد أو إعادة إنشاء تطبيق حالي هو عارض الخرائط الذي تمت ترقيته.
ماذا يحدث عندما يتم تغيير العارض التلقائي؟
يصبح العارض التلقائي هو العارض الذي تمت ترقيته مع طرح الإصدار 18.2.0 من حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل Android. وللاستفادة من العارض الذي تمت ترقيته، يجب إنشاء أي تطبيقات جديدة أو إعادة إنشاء أي تطبيقات حالية باستخدام الإصدار الجديد من حزمة تطوير البرامج (SDK).
ومع ذلك، يمكنك اختيار إيقاف هذا التغيير. في حال إيقاف هذه الميزة، سيستمر تطبيقك في استخدام العارض القديم. راجِع القسم إيقاف استخدام العارض الذي تمت ترقيته للحصول على مثال عن الرموز البرمجية حول كيفية الإيقاف.
الأجهزة المتوافقة
لاستخدام عارض الخرائط الذي تمت ترقيته، يجب أن تستوفي الأجهزة المعايير التالية:
- Android 5.0 (المستوى 21 من واجهة برمجة التطبيقات) أو إصدار أحدث
- مساحة تخزين بيانات تبلغ 2 غيغابايت أو أكثر
- استخدام "خدمات Google Play" الإصدار 21.39.14 أو إصدار أحدث
بالنسبة إلى الأجهزة التي تستخدم نظام التشغيل Android 4.4W (المستوى 20 لواجهة برمجة التطبيقات) والإصدارات الأقدم، أو التي تقل مساحة تخزين البيانات فيها عن 2 غيغابايت، أو تستخدم الإصدار 21.39.13 من خدمات Google Play أو إصدارًا أقدم، يمكنك مواصلة استخدام العارض القديم حتى بعد تغيير العارض التلقائي إلى عارض الخرائط الذي تمت ترقيته.
إيقاف استخدام العارض الذي تمت ترقيته
إنّ التطبيقات التي تم إنشاؤها باستخدام الإصدار 18.2.0 من حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل Android تستخدم تلقائيًا العارض الذي تمت ترقيته. وإذا لزم الأمر، يمكنك بشكل صريح إيقاف استخدام العارض الذي تمت ترقيته لاستخدام العارض القديم في تطبيقك.
لإيقاف الميزة:
يُرجى تعديل الرمز البرمجي لاستيراد MapsInitializer وMapsInitializer.Renderer بشكل واضح.
عدِّل الرمز لطلب الرمز
MapsInitializer.initialize()
، مع ضبطRenderer.LEGACY
على خيار الإيقاف واستخدام العارض القديم.استخدِم OnMapsSdkInitializedCallback لتحديد إصدار العارض الذي تم عرضه.
يجب أن يتصل الرمز بـ MapsInitializer.initialize()
قبل إنشاء أي MapView أو
MapFragment
أو SupportMapFragment. ننصحك بإجراء ذلك في onCreate
من أجل
التطبيق
أو النشاط
في تطبيقك،
قبل ضبط عرض المحتوى.
يوضح المثال التالي كيفية طلب MapsInitializer.initialize()
لإيقاف استخدام عارض الخرائط القديم.
Kotlin
import com.google.android.gms.maps.MapsInitializer import com.google.android.gms.maps.MapsInitializer.Renderer import com.google.android.gms.maps.OnMapsSdkInitializedCallback internal class MapRendererOptInApplication : Application(), OnMapsSdkInitializedCallback { override fun onCreate() { super.onCreate() MapsInitializer.initialize(applicationContext, Renderer.LEGACY, this) } override fun onMapsSdkInitialized(renderer: MapsInitializer.Renderer) { when (renderer) { Renderer.LATEST -> Log.d("MapsDemo", "The latest version of the renderer is used.") Renderer.LEGACY -> Log.d("MapsDemo", "The legacy version of the renderer is used.") } } }
Java
import com.google.android.gms.maps.MapsInitializer; import com.google.android.gms.maps.MapsInitializer.Renderer; import com.google.android.gms.maps.OnMapsSdkInitializedCallback; class MapRendererOptInApplication extends Application implements OnMapsSdkInitializedCallback { @Override public void onCreate() { super.onCreate(); MapsInitializer.initialize(getApplicationContext(), Renderer.LEGACY, this); } @Override public void onMapsSdkInitialized(MapsInitializer.Renderer renderer) { switch (renderer) { case LATEST: Log.d("MapsDemo", "The latest version of the renderer is used."); break; case LEGACY: Log.d("MapsDemo", "The legacy version of the renderer is used."); break; } } }