ה-SDK של מפות Google ל-Android יכול להציג תמונת מפת סיביות של מפה, אינטראקטיביות מוגבלת למשתמש. המפה הזו נקראת מצב בסיסי.
דוגמאות קוד
מאגר ApiDemos ב-GitHub כולל דוגמאות שמדגימות שימוש במצב Lite:
- LiteDemoActivity – Java: העקרונות הבסיסיים של שימוש במפת מצב Lite ב-Java
- LiteDemoActivity – Kotlin: העקרונות הבסיסיים של שימוש במפה במצב Lite ב-Kotlin
- LiteListDemoActivity – Java: הצגת מפות ביעילות ב- ListViews בשימוש במצב Lite ב-Java
- LiteListDemoActivity – Kotlin: הצגת מפות ביעילות ב- ListViews בשימוש במצב Lite ב-Kotlin
סקירה כללית של מצב Lite
מפה במצב Lite היא תמונת מפת סיביות של מפה במיקום ספציפי ובשינוי מרחק התצוגה ברמה. מצב Lite תומך בכל סוגי המפות (רגיל, היברידי, לוויין, פני השטח) וקבוצת משנה של הפונקציונליות שמסופקת על ידי ה-API המלא. מצב בסיסי שימושי כאשר רוצים לספק מספר מפות בזרם, או מפה קטן מדי מכדי לתמוך באינטראקציה משמעותית.
משתמשים שמציגים את המפה לא יכולים לשנות את מרחק התצוגה או להזיז את המפה. הסמלים במפה נותנים המשתמשים יכולים לגשת להצגת המפה באפליקציה לנייד של מפות Google ומבקשים לקבלת מסלול.
הוספת מפה במצב Lite
במצב Lite נעשה שימוש באותם סיווגים וממשקים כמו הגרסה המלאה של Android למפות Google
API. ניתן להגדיר את GoogleMap
למצב Lite
דרכים:
- כמאפיין XML של
MapView
אוMapFragment
- או באובייקט
GoogleMapOptions
כמאפיין XML עבור MapView
או MapFragment
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
android:name="com.google.android.gms.maps.MapFragment"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
map:cameraZoom="13"
map:mapType="normal"
map:liteMode="true"/>
באובייקט GoogleMapOptions
Kotlin
val options = GoogleMapOptions() .liteMode(true)
Java
GoogleMapOptions options = new GoogleMapOptions() .liteMode(true);
לקבלת פרטים על הגדרת המצב הראשוני של המפה, אפשר לעיין במדריך אובייקט מיפוי.
Intent להפעלת תצוגת מפה או בקשה לקבלת מסלול
כברירת מחדל, סרגל כלים בפינה השמאלית התחתונה של המפה מכיל סמלים
מתן גישה לתצוגת מפה או בקשה לקבלת מסלול בנייד של מפות Google
אפליקציה. אפשר להשבית את סרגל הכלים באמצעות קריאה
UiSettings.setMapToolbarEnabled(false)
לקבלת מידע נוסף
עיינו במסמכי התיעוד של סרגל הכלים.
בנוסף, כברירת מחדל כשמשתמש מקיש על המפה, ה-API מפעיל את מפות Google לנייד
אפליקציה. אפשר לשנות את זה באמצעות הפקודה GoogleMap.setOnMapClickListener()
כדי:
הגדירו את המאזינים שלכם. ניתן גם להשבית אירועי קליקים במפה על ידי התקשרות
setClickable()
בתצוגה שמכילה את MapView
או MapFragment
. עבור
פרטים על שתי הטכניקות האלה, עיינו במסמכי התיעוד בנושא אירועים.
אירועים בנושא מחזור החיים
כשמשתמשים ב-API במצב אינטראקטיבי מלא, המשתמשים במחלקה MapView
חייבים להעביר את כל השיטות של מחזור החיים של הפעילות ל-methods המתאימות
בכיתה MapView
. דוגמאות לשיטות של מחזור חיים:
onCreate()
, onDestroy()
, onResume()
וגם onPause()
.
כשמשתמשים במחלקה MapView
במצב Lite, אירועי מחזור חיים של העברה
אופציונלי, למעט במצבים הבאים:
- חובה להתקשר אל
onCreate()
, אחרת לא תוצג מפה. - אם ברצונך להציג את הנקודה 'המיקום שלי' במפה במצב Lite ולהשתמש ב-
למקור המיקום המוגדר כברירת מחדל, יהיה עליך להתקשר אל
onResume()
וגםonPause()
, כיוון שמקור המיקום יתעדכן רק בין השיחות האלה. אם משתמשים אין צורך לקרוא לשתי השיטות האלה.
תכונות API נתמכות
הטבלה הבאה מתארת את ההתנהגות של מפת מצב Lite לכל אזור פונקציונליות של ממשק API. אם אפליקציה מפעילה שיטה שאינה נתמכת במצב Lite: ה-API יתעד הודעת אזהרה.
פונקציונליות | |
---|---|
סוגי מפה | יש תמיכה? כן
המפה הבאה
הסוגים זמינים דרך GoogleMapOptions.mapType()
GoogleMap.setMapType() : MAP_TYPE_NORMAL ,
MAP_TYPE_SATELLITE , MAP_TYPE_TERRAIN ,
MAP_TYPE_HYBRID , MAP_TYPE_NONE |
קווים פוליגוניים, מצולעים, מעגלים | יש תמיכה? כן
הפונקציונליות של מצב Lite עבור
shapes תואם ל-
ממשק API מלא. |
היטל | יש תמיכה? כן
הפונקציונליות של מצב Lite עבור
היטל
תואם ל-API המלא. |
המיקום שלי | יש תמיכה? כן
הפונקציונליות של מצב Lite
שכבת 'המיקום שלי'
תואם ל-API המלא. |
מרווח פנימי במפה | יש תמיכה? כן
תמיכה במצב Lite
מרווח פנימי במפה
תואם ל-API המלא. |
חלונות מידע | יש תמיכה? כן
אם מגדירים את title() של סמן, ברירת המחדל
חלון המידע
מופיעות כשהמשתמש מקיש על הסמן. אפשר להציג את חלון המידע
באופן פרוגרמטי על ידי קריאה ל-showInfoWindow() בסמן.
תוכל גם ליצור חלונות מידע מותאמים אישית באמצעות
ממשק InfoWindowAdapter . |
סגנונות של מפה בסיסית בהתאמה אישית | יש תמיכה? חלקי
ה-SDK של מפות Google ל-Android תומך
סגנון מותאם אישית של
במפה הבסיסית. מצב Lite תומך בעיצוב מותאם אישית מבוסס JSON בלבד, לא
עיצוב מבוסס-ענן שמחייב מזהה מפה כדי לעבד מפה מעוצבת.
כמו כן, מצב Lite אינו תומך בהגדרה של
ערכת הצבעים של המפה
כדי להשתמש במצב כהה.
|
סמנים | יש תמיכה? באופן חלקי
אפשר להוסיף סמן
ומגיבים לאירוע של קליק. אפשר גם להוסיף הגדרות בהתאמה אישית
וסמלים של סמנים. לא ניתן להפוך סמן לניתן לגרירה. סמנים על
המפה במצב Lite שטוחה ולא ניתן לסובב אותן. |
מיקום המצלמה, זום ואנימציה | יש תמיכה? באופן חלקי
אפשר להגדיר את יעד המצלמה ואת הזום, אבל לא את ההטיה או את ההטיה.
רמת הזום מעוגלת למספר השלם הקרוב ביותר במצב Lite.
התקשרות אל שיחה אל |
מיפוי אירועים | יש תמיכה? באופן חלקי
יש תמיכה במצב Lite
כדי להשבית אירועי לחיצה במפה במצב Lite, אפשר להתקשר
פרטים נוספים זמינים במאמר אירועים תיעוד. |
מפות פנים ובניינים | יש תמיכה? לא
במצב Lite יוצגו אותם משבצות כמו
API סטטי של מפות Google.
המשמעות היא שאם תוכנית הקומה הפנימית משולבת באריח ברירת המחדל,
היא תופיע. אחרת, היא לא תהיה זמינה. בנוסף, אי אפשר לשנות את הרמה
להציג או לשנות בורר רמות. |
שכבת התנועה | יש תמיכה? לא
אין תמיכה ב- GoogleMap.setTrafficEnabled()
במצב Lite. |
שכבות-על של קרקע | האם יש תמיכה? לא
אין תמיכה ב- GoogleMap.addGroundOverlay() במצב Lite
במצב 'סינון תוכן'. |
שכבות-על של משבצות | יש תמיכה? לא
אין תמיכה ב- GoogleMap.addTileOverlay() במצב Lite
במצב 'סינון תוכן'. |
תנועות | יש תמיכה? לא
מצב Lite לא תומך בתנועות. הפעלה והשבתה של תנועות
לא תהיה השפעה. |
Street View | יש תמיכה? לא
אין תמיכה בStreet View במצב טעינה מהירה. |