הצגת מפה בסיסית

מפה בסיסית שמרכזה ליד סידני באוסטרליה.

בדוגמה הזו נוצרת מפה באמצעות SupportMapFragment מ-SDK של מפות ל-Android.

מידע נוסף זמין במאמר הוספת מפה לאפליקציה ל-Android.

שנתחיל?

כדי לנסות את הקוד לדוגמה, צריך להגדיר את סביבת הפיתוח. מידע נוסף זמין במאמר דוגמאות קוד של Maps SDK ל-Android.

הצגת הקוד

Kotlin

class BasicMapDemoActivity :
    SamplesBaseActivity(),
    OnMapReadyCallback {

    val SYDNEY = LatLng(-33.862, 151.21)
    val ZOOM_LEVEL = 13f

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.basic_demo)
        val mapFragment: SupportMapFragment? =
            supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
        mapFragment?.getMapAsync(this)
    }

    /**
     * This is where we can add markers or lines, add listeners or move the camera. In this case,
     * we just move the camera to Sydney and add a marker in Sydney.
     */
    override fun onMapReady(googleMap: GoogleMap) {
        with(googleMap) {
            moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, ZOOM_LEVEL))
            addMarker(MarkerOptions().position(SYDNEY).title("Sydney"))
        }
    }
}

      

Java

public class BasicMapDemoActivity extends SamplesBaseActivity implements OnMapReadyCallback {

    private static final LatLng SYDNEY = new LatLng(-33.862, 151.21);
    private static final float ZOOM_LEVEL = 13.0f;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(com.example.common_ui.R.layout.basic_demo);

        SupportMapFragment mapFragment =
                (SupportMapFragment)
                        getSupportFragmentManager()
                                .findFragmentById(com.example.common_ui.R.id.map);
        mapFragment.getMapAsync(this);
        applyInsets(findViewById(com.example.common_ui.R.id.map_container));
    }

    /**
     * This is where we can add markers or lines, add listeners or move the camera. In this case, we
     * move the camera to Sydney and add a marker at Sydney.
     */
    @Override
    public void onMapReady(GoogleMap map) {
        map.moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, ZOOM_LEVEL));
        map.addMarker(new MarkerOptions().position(SYDNEY).title("Sydney"));
    }
}

      

שכפול והרצה של הדוגמאות

כדי להריץ את הדוגמה הזו באופן מקומי, צריך להתקין את Git. הפקודה הבאה משכפלת את מאגר האפליקציות לדוגמה.

git clone git@github.com:googlemaps-samples/android-samples.git

מייבאים את הפרויקט לדוגמה ל-Android Studio:

  1. ב-Android Studio, לוחצים על File > ‏New > ‏Import Project (קובץ > חדש > ייבוא פרויקט).
  2. עוברים למיקום שבו שמרתם את המאגר ובוחרים את ספריית הפרויקט של Kotlin או Java:

    • Kotlin:‏ PATH-REPO/android-samples/ApiDemos/kotlin
    • Java: PATH-REPO/android-samples/ApiDemos/java
  3. לוחצים על פתיחה. ‫Android Studio יוצר את הפרויקט באמצעות כלי ה-build של Gradle.
  4. יוצרים קובץ secrets.properties ריק באותה ספרייה שבה נמצא קובץ local.properties של הפרויקט. מידע נוסף על הקובץ הזה זמין במאמר הוספת מפתח ה-API לפרויקט.
  5. מקבלים מפתח API מהפרויקט שבו מופעל SDK של מפות ל-Android.
  6. מוסיפים את המחרוזת הבאה ל-secrets.properties, ומחליפים את YOUR_API_KEY בערך של מפתח ה-API:

    MAPS_API_KEY=YOUR_API_KEY
  7. מפעילים את האפליקציה.