Google कोड स्कैनर (सिर्फ़ Android पर)

Google कोड स्कैनर एपीआई, उपयोगकर्ता की निजता को बनाए रखते हुए, कोड स्कैन करने के लिए एक पूरा समाधान उपलब्ध कराता है. इसके लिए, आपके ऐप्लिकेशन को कैमरे की अनुमति का अनुरोध करने की ज़रूरत नहीं पड़ती है. ऐसा करने के लिए, आपको Google Play services को कोड स्कैन करना होता है और ऐप्लिकेशन को सिर्फ़ स्कैन के नतीजे मिलते हैं. इमेज को प्रोसेस करने की पूरी प्रोसेस, आपके डिवाइस पर होती है और Google, नतीजों या इमेज के डेटा को सेव नहीं करता. एपीआई कोड और ML Kit Barcode Scaning API, दोनों के लिए एक जैसे कोड फ़ॉर्मैट इस्तेमाल किए जा सकते हैं. साथ ही, कोड में एक ही Barcode ऑब्जेक्ट होता है.

यह एपीआई उन ऐप्लिकेशन के लिए बढ़िया है जो सिर्फ़ कोड स्कैन करते हैं. साथ ही, इसके लिए किसी कस्टम यूज़र इंटरफ़ेस (यूआई) या कैमरे के अनुभव की ज़रूरत नहीं होती. इसे पूरी तरह से Google Play सेवाओं में लागू किया जाता है, इसलिए आपके ऐप्लिकेशन के आकार पर कोई खास असर नहीं पड़ता. कस्टम यूज़र इंटरफ़ेस (यूआई) के लिए ज़रूरी ज़्यादा इस्तेमाल के उदाहरणों के लिए, सीधे एमएल किट बारकोड स्कैनिंग एपीआई का इस्तेमाल करें.

अगर आपका कोई सवाल है, तो किसी गड़बड़ी की जानकारी सबमिट करें या ML Kit समुदाय पेज पर जाएं.

शुरू करने से पहले

अपने ऐप्लिकेशन को तैयार करने के लिए, नीचे दिए गए सेक्शन में बताया गया तरीका अपनाएं.

अपना ऐप्लिकेशन कॉन्फ़िगर करें

  1. अपनी टॉप-लेवल settings.gradle फ़ाइल में Google का Maven का डेटा स्टोर करने की जगह और Maven Central डेटा स्टोर करने की जगह शामिल करें:dependencyResolutionManagement के ब्लॉक में:

    dependencyResolutionManagement {
      repositories {
        google()
        mavenCentral()
      }
    }
    
  2. अपने मॉड्यूल की Gradle बिल्ड फ़ाइल में play-services-code-scanner SDK टूल के लिए Google Play services की डिपेंडेंसी जोड़ें, जो आम तौर पर app/build.gradle होती है:

    dependencies {
      implementation 'com.google.android.gms:play-services-code-scanner:16.0.0'
    }
    
  3. अपना ऐप्लिकेशन कॉन्फ़िगर करें, ताकि Play Store से आपका ऐप्लिकेशन इंस्टॉल करते समय, 'Google Play सेवाएं' अपने-आप डिवाइस में स्कैनर मॉड्यूल डाउनलोड कर सकें.

    <application ...>
      ...
      <meta-data
          android:name="com.google.mlkit.vision.DEPENDENCIES"
          android:value="barcode_ui"/>
      ...
    </application>
    

    स्कैनर मॉड्यूल की उपलब्धता की जांच और Google Play services ModuleInstallClient API पर जाकर, डाउनलोड का अनुरोध करने के बारे में भी साफ़ तौर पर बताया जा सकता है.

    अगर आप इंस्टॉल-टाइम मॉड्यूल डाउनलोड चालू नहीं करते हैं या अश्लील डाउनलोड का अनुरोध करते हैं, तो Google Play services पहली बार इस्तेमाल किए जाने पर स्कैनर मॉड्यूल को डाउनलोड करेगा. अगर इसे पहले से किसी अन्य इस्तेमाल के लिए इंस्टॉल नहीं किया गया है.

कोड स्कैन करें

1. (ज़रूरी नहीं) कोड स्कैनर कॉन्फ़िगर करें

अगर आपको पता है कि आपको कौनसे फ़ॉर्मैट में बारकोड पढ़ना है, तो सिर्फ़ उन फ़ॉर्मैट का पता लगाने के लिए, बारकोड डिटेक्टर की स्पीड को बेहतर किया जा सकता है. उदाहरण के लिए, सिर्फ़ ऐज़टेक कोड और क्यूआर कोड की पहचान करने के लिए, GmsBarcodeScannerOptions ऑब्जेक्ट को इस तरह बनाएं:

Kotlin

val options = GmsBarcodeScannerOptions.Builder()
    .setBarcodeFormats(
        Barcode.FORMAT_QR_CODE,
        Barcode.FORMAT_AZTEC)
    .build()

Java

GmsBarcodeScannerOptions options = new GmsBarcodeScannerOptions.Builder()
    .setBarcodeFormats(
        Barcode.FORMAT_QR_CODE,
        Barcode.FORMAT_AZTEC)
    .build();

2. GmsBarcodeScanner का इंस्टेंस पाना

Kotlin

val scanner = GmsBarcodeScanning.getClient(this)
// Or with a configured options
// val scanner = GmsBarcodeScanning.getClient(this, options)

Java

GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(this);
// Or with a configured options
// GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(context, options);

3. startScan() को कॉल करके कोड स्कैन करने का अनुरोध करें

Kotlin

scanner.startScan()
    .addOnSuccessListener { barcode ->
        // Task completed successfully
    }
    .addOnCanceledListener {
        // Task canceled
    }
    .addOnFailureListener { e ->
        // Task failed with an exception
    }

Java

scanner
    .startScan()
    .addOnSuccessListener(
        barcode -> {
          // Task completed successfully
        })
    .addOnCanceledListener(
        () -> {
          // Task canceled
        })
    .addOnFailureListener(
        e -> {
          // Task failed with an exception
        });

4. नतीजे के तौर पर दिखने वाले Barcode को मैनेज करें

Kotlin

val rawValue: String? = barcode.rawValue

Java

String rawValue = barcode.getRawValue();