ZXing Kotlin: QR कोड स्कैन करने की पूरी गाइड

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

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

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

ZXing Kotlin: QR कोड और बारकोड स्कैन करने की संपूर्ण गाइड

आज के मोबाइल ऐप और ऑटोमेशन के दौर में, QR कोड और बारकोड से जानकारी पढ़ना एक आम बात हो गई है। ZXing (उच्चारण: "ज़ेब्रा क्रॉसिंग") एक ओपन-सोर्स लाइब्रेरी है जो डेवलपर्स को अपने ऐप में एक-डायमेंशनल (EAN, UPC, Code 128) और दो-डायमेंशनल (QR, Data Matrix, Aztec) कोड को पहचानने और बनाने की सुविधा देती है।

यह गाइड Kotlin डेवलपर्स के लिए है जो ZXing को बेसिक इंस्टॉलेशन से लेकर परफॉरमेंस-ऑप्टिमाइज़्ड स्कैनर बनाने तक सीखना चाहते हैं। हम सिर्फ स्टैंडर्ड तरीके ही नहीं, बल्कि वो छोटी-छोटी बातें भी कवर करेंगे जिनसे शुरुआती लोग अक्सर गलती कर बैठते हैं।

1. ZXing क्या है और इसकी ज़रूरत क्यों?

ZXing एक इमेज प्रोसेसिंग लाइब्रेरी है जो बारकोड को डिकोड और एनकोड करने में माहिर है। इसे Google ने बनाया था और अब कम्युनिटी इसे मेंटेन करती है। इसकी सबसे बड़ी खासियत है क्रॉस-प्लेटफॉर्म सपोर्ट (Java/Kotlin, C++, JavaScript, Python) और ढेर सारे फॉर्मेट्स को सपोर्ट करना - सामान्य QR कोड से लेकर PDF417 जैसे इंडस्ट्रियल कोड तक।

Kotlin में ZXing क्यों इस्तेमाल करें? पहली बात, यह Android डेवलपमेंट का गोल्ड स्टैंडर्ड है। दूसरी बात, यह कैमरे के साथ काम करने के लिए रेडीमेड क्लासेस देता है (जैसे CameraX या Camera2), जिससे आपको वीडियो कैप्चर के लिए लो-लेवल कोड नहीं लिखना पड़ता। तीसरी बात, ZXing सिर्फ लाइव वीडियो ही नहीं, बल्कि गैलरी से ली गई इमेजेज के साथ भी काम कर सकता है - जैसे बिल स्कैन करना या लॉजिस्टिक्स में प्रोडक्ट के कोड पढ़ना।

2. इंस्टॉलेशन कैसे करें?

Kotlin (Android) के लिए, Gradle बिल्ड सिस्टम के ज़रिए इंस्टॉलेशन होता है। build.gradle (Module: app) फाइल में ये डिपेंडेंसी ऐड करें:

dependencies {
    // मुख्य ZXing लाइब्रेरी
    implementation("com.google.zxing:core:3.5.3")
    // कैमरे के लिए अतिरिक्त मॉड्यूल (सुझावित)
    implementation("com.journeyapps:zxing-android-embedded:4.3.0")
}

अगर आप Kotlin Multiplatform या सिर्फ सर्वर-साइड Kotlin (Ktor) इस्तेमाल कर रहे हैं, तो सिर्फ core-मॉड्यूल काफी है:

implementation("com.google.zxing:core:3.5.3")

डेस्कटॉप ऐप (JVM) के लिए Maven या Gradle में इसी तरह डिपेंडेंसी ऐड करें। प्रोजेक्ट सिंक करने के बाद लाइब्रेरी इस्तेमाल के लिए तैयार है।

3. तुरंत शुरुआत करें — एक छोटा सा काम करने वाला उदाहरण

ZXing को टेस्ट करने का सबसे आसान तरीका है बिल्ट-इन स्कैनिंग Activity को चलाना। इसके लिए बस एक Intent कॉल करना होता है। नीचे Android Activity के लिए Kotlin में मिनिमम कोड दिया गया है:

import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import com.journeyapps.barcodescanner.ScanContract
import com.journeyapps.barcodescanner.ScanOptions

class MainActivity : AppCompatActivity() {

    // स्कैनर शुरू करने के लिए कॉन्ट्रैक्ट रजिस्टर करें
    private val barcodeLauncher = registerForActivityResult(ScanContract()) { result ->
        if (result.contents == null) {
            Toast.makeText(this, "स्कैनिंग रद्द की गई", Toast.LENGTH_SHORT).show()
        } else {
            Toast.makeText(this, "परिणाम: ${result.contents}", Toast.LENGTH_LONG).show()
        }
    }

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

        // स्कैनिंग ऑप्शन सेट करें
        val options = ScanOptions()
        options.setDesiredBarcodeFormats(ScanOptions.QR_CODE) // सिर्फ QR कोड
        op                    

अनुशंसाएँ