2011-10-26 89 views
4

我想將zing條碼掃描器集成到我的android應用程序中。所以我用zing積分器如下Zxing條碼相機選項

public Button.OnClickListener mScan = new Button.OnClickListener() { 
    public void onClick(View v) { 
     Intent intent = new Intent("com.google.zxing.client.android.SCAN"); 
     intent.setPackage("com.google.zxing.client.android"); 
     intent.putExtra("SCAN_MODE", "QR_CODE_MODE"); 
     startActivityForResult(intent, 0); 
    }};public void onActivityResult(int requestCode, int resultCode, Intent intent) { 
    if (requestCode == 0) { 
     if (resultCode == RESULT_OK) { 
      String contents = intent.getStringExtra("SCAN_RESULT"); 
      String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); 
      // Handle successful scan 
     } else if (resultCode == RESULT_CANCELED) { 
      // Handle cancel 
     } 
    } 
} 

我想實現這個應用程序在Android平板電腦(2.2版本),其中包含兩個攝像頭。 當我啓動此功能時,會自動開始使用後置攝像頭(Main)執行掃描,但根據我的應用需求,我需要僅使用前置攝像頭執行條碼掃描。有選擇像

intent.putExtra("SCAN_MODE", "QR_CODE_MODE","FRONT_CAMERA"); 
  1. 是這可能使前置攝像頭與此zingintegrator功能的幫助?如果沒有,我是否需要實現整個zing開源代碼,這樣纔有可能只用前置攝像頭執行掃描。謝謝。

回答

2

不,沒有支持,真的。用於請求前置攝像頭的API在Android 2.3(我認爲?)和Barcode Scanner現在處於1.5版本之前不會出現,並很快轉移到2.1。 Camera.open()默認打開後置攝像頭,不會選擇前置攝像頭。

條碼掃描儀確實有一個選項來反轉相機圖像,因爲我們被告知至少有一個平板電腦只有有一個前置攝像頭,並且任何工作都需要將圖像反轉。

我可以告訴你,設備上的前置攝像頭比一般的後置攝像頭差得多。其分辨率和CCD響應性使得很難以這種方式進行掃描。

+0

謝謝肖恩,但我真的只需要工作前置攝像頭(我的應用程序要求),我從viewsonic使用平板電腦「viewpad7」。 –

+0

然後您必須編寫您自己的應用程序,並使用新的API訪問攝像頭。一旦你有相機的圖像數據,你可以使用核心庫進行實際的掃描。這只是您需要從頭創建的Android位。 –

+0

更新。我已經從Barcode Scanner +中取回代碼,試圖在2.3+設備上打開前置攝像頭。 –