גרסה משודרגת של רכיב העיבוד של המפה זמינה החל מגרסה 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 ומטה ממשיכים להשתמש במעבד הגרפי הקודם.
ביטול ההסכמה לשימוש במעבד התצוגה המשודרג
במקרה הצורך, אפשר להשבית את השימוש במעבד התצוגה המשודרג ולהשתמש במעבד התצוגה מהדור הקודם באפליקציה.
כדי לבטל את ההסכמה:
משדרגים את Maps SDK ל-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; } } }