2012-01-03 22 views
14

मैं ज़ैक्सिंग के लिए नया हूं। मैं अपने एंड्रॉइड एप्लिकेशन में zxing का उपयोग कर बारकोड रूपांतरण कर रहा हूं। क्या कोई मुझे मार्गदर्शन कर सकता है कि एंड्रॉइड डिवाइस में zxing को कैसे शामिल किया जाए।एंड्रॉइड में Zxing का उपयोग कैसे करें

उत्तर

38

ZXing बारकोड स्कैनर मोबाइल में स्थापित है, तो इसके बहुत आसान:

Intent intent = new Intent("com.google.zxing.client.android.SCAN"); 
     intent.putExtra("SCAN_MODE", "PRODUCT_MODE");//for Qr code, its "QR_CODE_MODE" instead of "PRODUCT_MODE" 
     intent.putExtra("SAVE_HISTORY", false);//this stops saving ur barcode in barcode scanner app's history 
     startActivityForResult(intent, 0); 

और OnActivityResult में:

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (requestCode == 0) { 
      if (resultCode == RESULT_OK) { 
        String contents = data.getStringExtra("SCAN_RESULT"); //this is the result 
      } else 
      if (resultCode == RESULT_CANCELED) { 
       // Handle cancel 
      } 
     } 
    } 

इसकी स्थापित नहीं हैं: यू इस कोड try- में डाल सकते हैं ब्लॉक और अपवाद को पकड़ने को पकड़ने, यू यह कर सकते हैं:

Uri marketUri = Uri.parse("market://details?id=com.google.zxing.client.android"); 
Intent marketIntent = new Intent(Intent.ACTION_VIEW,marketUri); 
startActivity(marketIntent); 

तो यह एप्लिकेशन टी पुनर्निर्देश o android market और barcode scanner स्थापित होने पर आपका ऐप एक बार चल रहा है।

तो यू न उर अनुप्रयोग में अन्य एप्लिकेशन का उपयोग करना चाहते हैं, यू पुस्तकालय ZXing डाउनलोड करने और (यह अपाचे चींटी का उपयोग कर बनाई गई है) core.jar फ़ाइल से वर्गों का उपयोग करने की कोशिश करना है। https://github.com/zxing/zxing/wiki/Getting-Started-Developing

सभी आशय विकल्पों यहां पाया जा सकता: ऐसा करने के लिए इस ट्यूटोरियल का पालन करें सेटअप करने के लिए

http://code.google.com/p/zxing/source/browse/trunk/android/src/com/google/zxing/client/android/Intents.java

+0

धन्यवाद, यह अधिक जानकारीपूर्ण है। मैंने गूगल से कोड डाउनलोड किया। और जब भी मैं निर्मित स्क्रिप्ट संकलित करता हूं, मुझे त्रुटि मिल रही है। क्या हम नेट से core.jar डाउनलोड कर सकते हैं। या आपके पास core.jar फ़ाइल है। – RAAAAM

+0

core.jar फ़ाइल स्वयं पर उत्पन्न की जानी चाहिए। –

+0

coz इसकी पोर्टेबल –

6

आपको ज़िंग की डाउनलोड करने की आवश्यकता है। जार फ़ाइल & अपने एप्लिकेशन फ़ोल्डर में जोड़ें। फिर आप कक्षाओं & विधियों को कॉल कर सकते हैं।

+2

नीचे वोट के लिए क्या कारण है? – Android

+0

ZXing एकीकरण कि जिस तरह से काम नहीं करता है .. – Siddharth

+2

@Siddharth - हाँ, यह करता है। यह ओपन सोर्स है और यह एक आम कार्यान्वयन विकल्प है। –

2

चरण कदम से ग्रहण

  1. डाउनलोड ZXing में 3.2.1 ZXing "https://github.com/zxing/zxing"
  2. zzing-master.zip को अनजिप करें, zxi में "android" प्रोजेक्ट आयात करने के लिए ग्रहण का उपयोग करें एनजी मास्टर
  3. से " http://repo1.maven.org/maven2/com/google/zxing/core/3.2.1/"
  4. "libs" "Android" परियोजना में फ़ोल्डर बनाएँ और पेस्ट कोर-3.2.1.jar में libs फ़ोल्डर
  5. परियोजना पर क्लिक करें
  6. डाउनलोड कोर-3.2.1.jar : स्तर को 1.7 में बदलने के लिए "गुण" -> "जावा कंपाइलर" चुनें। तब 4.4.2+ Android के लिए, क्योंकि 1.7 का उपयोग कर "CameraConfigurationUtils.java" "में ZXing मास्टर/एंड्रॉयड/ऐप्स मौजूद नहीं हैं तो Android 4.4
  7. साथ संकलन की आवश्यकता है" Android "परिवर्तन" परियोजना का निर्माण लक्ष्य "पर क्लिक करें/src/मुख्य/जावा/com/गूगल/ZXing/ग्राहक/एंड्रॉयड/कैमरा/"। आप इसे "zxing-master/android-core/src/main/java/com/google/zxing/client/android/camera /" से कॉपी कर सकते हैं और अपनी प्रोजेक्ट पर पेस्ट कर सकते हैं।
  8. स्वच्छ और निर्माण परियोजना। यदि आपकी प्रोजेक्ट "स्विच - केस" के बारे में त्रुटि दिखाती है, तो आपको उन्हें "if - else" में बदलना चाहिए।
  9. पूर्ण। स्वच्छ और निर्माण परियोजना
संबंधित मुद्दे