عارض خرائط جديد

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

يقدّم أداة المعالجة الجديدة المزايا التالية:

حالة التحديث التلقائي

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

لم تنطبق التحديثات التلقائية على:

الأجهزة المتوافقة

لاستخدام أداة عرض الخرائط التي تمت ترقيتها، يجب أن تستوفي الأجهزة المعايير التالية:

  • Android 5.0 (المستوى 21 من واجهة برمجة التطبيقات) أو إصدار أحدث
  • إذا كنت تستخدم الإصدار 21.39.14 من "خدمات Google Play" أو إصدارًا أحدث

بالنسبة إلى الأجهزة التي تعمل بالإصدار 4.4W من Android (المستوى 20 لواجهة برمجة التطبيقات) والإصدارات الأقدم أو التي تستخدم الإصدار 21.39.13 من "خدمات Google Play" أو الإصدارات الأقدم، ستستمر في استخدام أداة التحويل القديمة.

إيقاف استخدام أداة التحويل التي تمت ترقيتها

إذا لزم الأمر، يمكنك إيقاف استخدام أداة التحويل التي تمت ترقيتها صراحةً لاستخدام أداة التحويل القديمة في تطبيقك.

لإيقاف الميزة:

  • ترقية حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لتطبيقات Android إلى الإصدار 18.0 أو إصدار أحدث

  • تحديث الرمز البرمجي لاستيراد MapsInitializer بشكل صريح أو MapsInitializer.Renderer.

  • تعديل الرمز لإجراء مكالمة MapsInitializer.initialize()، ضبط المسار Renderer.LEGACY للإيقاف واستخدام العارض القديم.

  • استخدِم OnMapsSdkInitializedCallback لتحديد إصدار أداة التحويل الذي تم إرجاعه.

يجب أن يستدعي الرمز المبرمَج MapsInitializer.initialize() قبل إنشاء أي MapView أو MapFragment أو SupportMapFragment . ننصحك باستدعاء هذه الوظيفة في onCreate لتطبيقك Application، أو Activity، قبل ضبط طريقة عرض المحتوى.

يوضّح المثال التالي كيفية الاتصال بالرقم 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;
    }
  }
}