מעבד מפה חדש

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

הכלי החדש לרינדור מספק את היתרונות הבאים:

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

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

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

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

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

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

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

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

ביטול ההסכמה לשימוש בכלי לרינדור המשודרג

במקרה הצורך, ניתן לבטל באופן מפורש את ההסכמה לשימוש בכלי המשודרג כדי להשתמש בכלי לרינדור מדור קודם באפליקציה.

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

  • שדרוג SDK של מפות ל-Android ל- גרסה 18.0 ומעלה.

  • צריך לעדכן את הקוד כדי לייבא באופן מפורש את MapsInitializer וגם MapsInitializer.Renderer

  • צריך לעדכן את הקוד כדי להתקשר MapsInitializer.initialize() להעביר את Renderer.LEGACY כדי לבטל את ההצטרפות ולהשתמש בכלי לרינדור מהדור הקודם.

  • שימוש ב-OnMapsSdkInitializedCallback כדי לקבוע איזו גרסה של כלי הרינדור הוחזרה.

הקוד חייב להתקשר MapsInitializer.initialize() לפני כל MapView, MapFragment, או SupportMapFragment נוצרה, מומלץ להתקשר למספר הזה בonCreate עבור האפליקציה Application, או פעילות, לפני שתצוגת התוכן שלו מוגדרת.

הדוגמה הבאה מראה איך להתקשר אל 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;
    }
  }
}