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