ספרייה ליצירה של מפות Google

Jetpack פיתוח נייטיב היא ערכת כלים הצהרתית ומותאמת לממשק משתמש, שעוזרת לפשט ולזרז את התהליך פיתוח של ממשק משתמש. באמצעות 'Jetpack פיתוח נייטיב', אפשר לתאר את מה שהאפליקציה צריכה להיראות ואז לאפשר ל-Jetpack פיתוח נייטיב לטפל בכל השאר.

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

הספרייה 'פיתוח מפות' מכילה פונקציות קומפוזביליות וסוגי נתונים שמאפשרים לבצע משימות נפוצות רבות. כמה מהפונקציות הקומפוזביליות הנפוצות ביותר וסוגי הנתונים כוללים:

קומפוזבילי תיאור
מעגל פונקציה קומפוזבילית להוספת מעגל למפה.
GoogleMap פונקציה קומפוזבילית להוספת מפה.
GroundOverlay פונקציה קומפוזבילית להוספת שכבת-על של קרקע למפה.
MapProperties סוג הנתונים של נכסים שניתן לשנות במפה.
MapUISettings סוג הנתונים של הגדרות שקשורות לממשק המשתמש במפה.
סמן פונקציה קומפוזבילית להוספת סמן למפה.
פוליגון פונקציה קומפוזבילית להוספת פוליגון למפה.
קו פוליגוני פונקציה קומפוזבילית להוספת קו פוליגוני למפה.
TileOverlay פונקציה קומפוזבילית להוספת שכבת-על של משבצת למפה.

רשימה מלאה של כל הפונקציות הקומפוזביליות וסוגי הנתונים זמינה במאמר חומר עזר בנושא ספריית פיתוח נייטיב למפות Google.

דרישות

כדי להשתמש בספריית 'כתיבה במפות Google' עם SDK של מפות ל-Android, עליך:

  • הורדה ולהתקין את Android Studio Arctic Fox.
  • יצירת פרויקט במפות Google ב-Android Studio עם:

    • סוג תבנית של פעילות כתיבה ריקה. התבנית הזו מוסיפה את של יחסי התלות שנדרשים על ידי Jetpack Compose.
    • ערכת ה-SDK המינימלית מוגדרת ל-API 21: Android 5.0 (Lollipop) ואילך.
    • השפה מוגדרת כ-Kotlin.
  • קבלת מפתח API ומוסיפים אותו לפרויקט.

  • צריך להתקין את ספריית 'כתיבה במפות Google' בפרויקט, כמו שמתואר בחלק הבא.

התקנה

כדי להתקין את ספריית 'כתיבה במפות Google' בפרויקט במפות Google:

  1. מוסיפים את יחסי התלות הבאים לקובץ build.gradle ברמת המודול:

      dependencies {
    
    
        // Android Maps Compose composables for the Maps SDK for Android
        implementation 'com.google.maps.android:maps-compose:6.1.0'
    }

  2. כדי לסנכרן את השינויים האלה, צריך ליצור מחדש את הפרויקט ב-Android Studio.

הוספת מפה לאפליקציה

הדוגמה הבאה מראה איך להשתמש GoogleMap קומפוזבילי כדי להוסיף מפה.

val singapore = LatLng(1.35, 103.87)
val cameraPositionState = rememberCameraPositionState {
  position = CameraPosition.fromLatLngZoom(singapore, 10f)
}
GoogleMap(
  modifier = Modifier.fillMaxSize(),
  cameraPositionState = cameraPositionState
) {
  Marker(
    state = MarkerState(position = singapore),
    title = "Singapore",
    snippet = "Marker in Singapore"
  )
}

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

לאחר מכן הדוגמה קוראת לפונקציה סמן קומפוזבילי בתוכן של המפה כדי להוסיף סמן למפה.

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

הגדרת נכסים במפה

אפשר להגדיר מאפיינים במפה באמצעות הוספת MapProperties או אובייקט MapUiSettings של מאפיינים שקשורים לממשק המשתמש. אפשר לשנות את האובייקטים האלה כדי להפעיל הרכבה מחדש של את המפה.

בדוגמה שלמטה, משתמשים ב-Switch. רכיב של עיצוב Material Design, כדי להפעיל או להשבית את פקדי הזום במפה.

var uiSettings by remember { mutableStateOf(MapUiSettings()) }
var properties by remember {
  mutableStateOf(MapProperties(mapType = MapType.SATELLITE))
}

Box(Modifier.fillMaxSize()) {
  GoogleMap(
    modifier = Modifier.matchParentSize(),
    properties = properties,
    uiSettings = uiSettings
  )
  Switch(
    checked = uiSettings.zoomControlsEnabled,
    onCheckedChange = {
      uiSettings = uiSettings.copy(zoomControlsEnabled = it)
    }
  )
}

המאמרים הבאים