מעבד מפה חדש

גרסה משודרגת של רכיב העיבוד של המפה זמינה החל מגרסה 18.2.0 של Maps SDK ל-Android. המעבד הזה כולל שיפורים רבים, כולל תמיכה בסגנון מפות מבוסס-ענן.

היתרונות של רכיב ה-Renderer החדש:

  • התכונות של עיצוב מפות מבוסס-ענן זמינות עם רכיב הרינדור החדש.
  • אפשרויות חדשות להתאמה אישית של קווים שבורים זמינות עם רכיב ה-rendering החדש.
  • העומס על הרשת, דרישות העיבוד וצריכת הזיכרון פוחתים.
  • שיפור הטיפול במחוות לאנימציות טובות יותר, וגם פנורמה וזום חלקים יותר.
  • מעברים חלקים יותר ותוויות מפה במיקום ברור.
  • חוויית משתמש יציבה ומשופרת יותר.

סטטוס העדכון האוטומטי

במרץ 2024, Google התחילה לעדכן אוטומטית את כל האפליקציות שנפרסו כדי להשתמש במעבד הגרפי המשודרג. העדכונים האוטומטיים הוחלו על כל האפליקציות שפועלות במכשירים שעומדים בדרישות המינימליות למכשיר, ללא קשר לגרסה של Maps SDK for Android שבה נעשה שימוש באפליקציה. ההשקה הזו הושלמה.

העדכונים האוטומטיים לא חלים על:

מכשירים נתמכים

כדי להשתמש במעבד המשודרג של המפה, המכשירים צריכים לעמוד בקריטריונים הבאים:

  • ‫Android מגרסה 5.0 (רמת API‏ 21) ואילך
  • שימוש בגרסה 21.39.14 ואילך של Google Play Services

מכשירים עם Android 4.4W‏ (API ברמה 20) ומטה או עם שירותי Google Play בגרסה 21.39.13 ומטה ממשיכים להשתמש במעבד הגרפי הקודם.

ביטול ההסכמה לשימוש במעבד התצוגה המשודרג

במקרה הצורך, אפשר להשבית את השימוש במעבד התצוגה המשודרג ולהשתמש במעבד התצוגה מהדור הקודם באפליקציה.

כדי לבטל את ההסכמה:

הקוד צריך לקרוא ל-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;
    }
  }
}