Kotlin में जियोलोकेशन और मैप्स: लाइब्रेरी और टूल्स की पूरी गाइड

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Kotlin में जियोलोकेशन और मैप्स: टूल्स की पूरी जानकारी

Kotlin, Android और सर्वर-साइड डेवलपमेंट के लिए एक आधुनिक प्रोग्रामिंग भाषा है, जो डेवलपर्स को जियोलोकेशन और मैप्स के साथ काम करने के लिए शक्तिशाली टूल्स प्रदान करती है। इस लेख में, हम मुख्य लाइब्रेरी और टूल्स पर नज़र डालेंगे जो आपको अपने Kotlin प्रोजेक्ट्स में मैपिंग सेवाओं और लोकेशन फीचर्स को आसानी से इंटीग्रेट करने में मदद करेंगे।

1. Google Maps SDK for Android (Kotlin)

Google Maps SDK Android ऐप्स में मैप्स के साथ काम करने का सबसे लोकप्रिय और फीचर-रिच टूल है। यह मैप्स प्रदर्शित करने, मार्कर, पॉलीगॉन जोड़ने, कैमरा कंट्रोल करने और लोकेशन जानकारी प्राप्त करने के लिए पूरा API सेट प्रदान करता है।

शुरू करने के लिए, build.gradle.kts में डिपेंडेंसी जोड़ें:

dependencies {
    implementation("com.google.android.gms:play-services-maps:18.2.0")
    implementation("com.google.android.gms:play-services-location:21.0.1")
}

SupportMapFragment का उपयोग करके Activity में मैप जोड़ने का उदाहरण:

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.google.android.gms.maps.GoogleMap
import com.google.android.gms.maps.OnMapReadyCallback
import com.google.android.gms.maps.SupportMapFragment
import com.google.android.gms.maps.model.LatLng
import com.google.android.gms.maps.model.MarkerOptions

class MapsActivity : AppCompatActivity(), OnMapReadyCallback {

    private lateinit var googleMap: GoogleMap

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_maps)

        val mapFragment = supportFragmentManager
            .findFragmentById(R.id.map) as SupportMapFragment
        mapFragment.getMapAsync(this)
    }

    override fun onMapReady(map: GoogleMap) {
        googleMap = map
        val sydney = LatLng(-33.852, 151.211)
        googleMap.addMarker(MarkerOptions()
            .position(sydney)
            .title("सिडनी में मार्कर"))
        googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(sydney, 12f))
    }
}

2. Yandex Maps SDK for Android (Kotlin)

Yandex Maps SDK उन प्रोजेक्ट्स के लिए एक बेहतरीन विकल्प है जो रूसी भाषी दर्शकों पर केंद्रित हैं। यह रूस और CIS के विस्तृत मैप्स प्रदान करता है, साथ ही ट्रैफिक विज़ुअलाइज़ेशन और सार्वजनिक परिवहन रूट जैसी अनूठी सुविधाएँ भी देता है।

लाइब्रेरी कनेक्ट करें:

dependencies {
    implementation("com.yandex.android:maps.mobile:4.3.1-lite")
}

मार्कर के साथ मैप प्रदर्शित करने का उदाहरण:

import com.yandex.mapkit.MapKitFactory
import com.yandex.mapkit.mapview.MapView
import com.yandex.mapkit.geometry.Point
import com.yandex.mapkit.map.MapObjectCollection
import com.yandex.runtime.image.ImageProvider

class MainActivity : AppCompatActivity() {
    private lateinit var mapview: MapView

    override fun onCreate(savedInstanceState: Bundle?) {
        MapKitFactory.initialize(this)
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        
        mapview = findViewById(R.id.mapview)
        mapview.map.move(
            CameraPosition(Point(55.751244, 37.618423), 11f, 0f, 0f)
        )
        
        val mapObjects: MapObjectCollection = mapview.map.mapObjects
        mapObjects.addPlacemark(
            Point(55.751244, 37.618423),
            ImageProvider.fromResource(this, R.drawable.marker)
        )
    }

    override fun onStop() {
        mapview.onStop()
        MapKitFactory.getInstance().onStop()
        super.onStop()
    }
}

3. OpenStreetMap (OSMDroid) Kotlin के लिए

OSMDroid एक ओपन-सोर्स लाइब्रेरी है जो OpenStreetMap डेटा का उपयोग करती है। इसे किसी API-की की आवश्यकता नहीं है और यह ऑफलाइन मैप्स के साथ काम कर सकती है, जो इसे उन परियोजनाओं के लिए आदर्श बनाती है जहाँ इंटरनेट कनेक्टिविटी सीमित है।

अनुशंसाएँ