在Android中,使用ZXing,我們可以通過手機攝像頭掃描QR碼並對其進行解碼。在Android應用程序中解碼QR碼?
但是,在我的情況下,QR碼圖像存儲在手機本身,我需要解碼它。
有沒有辦法以這種方式解碼QR碼?
在Android中,使用ZXing,我們可以通過手機攝像頭掃描QR碼並對其進行解碼。在Android應用程序中解碼QR碼?
但是,在我的情況下,QR碼圖像存儲在手機本身,我需要解碼它。
有沒有辦法以這種方式解碼QR碼?
您可以使用ZXing代碼。
captureActivity從相機捕獲QR碼圖像,解碼後會根據QR碼中存儲的數據類型顯示結果。例如如果網站URL使用QR碼編碼,結果屏幕將會有一個按鈕來打開該URL和likevise。 我需要從SD卡讀取圖像,對它進行解碼並以相同的方式處理輸出zxing在通過captureActivity解碼的情況下。 在「結果結果」中輸出結果後需要做什麼? – 2012-03-28 12:33:36
@CoolZeroInfinity你完成了嗎?你能分享嗎? – Erum 2015-01-27 12:22:53
您可以簡單地使用Mobile Vision API解碼來自Image的QR碼。它非常準確,可以在圖像上檢測多個Qr碼。
你必須包括以下庫序使用移動願景API:
編譯「com.google.android.gms:發揮服務視覺:9.6.1」
BarcodeDetector detector =
new BarcodeDetector.Builder(context)
.setBarcodeFormats(Barcode.DATA_MATRIX | Barcode.QR_CODE)
.build();
if(!detector.isOperational()){
Log.d("QR_READ","Could not set up the detector!");
}
Frame frame = new Frame.Builder().setBitmap(bitmap).build();
SparseArray<Barcode> barcodes = detector.detect(frame);
Log.d("QR_READ","-barcodeLength-"+barcodes.size());
Barcode thisCode=null;
if(barcodes.size()==0){
Log.d("QR_VALUE","--NODATA");
}
else if(barcodes.size()==1){
thisCode = barcodes.valueAt(0);
Log.d("QR_VALUE","--"+thisCode.rawValue);
}
else{
for(int iter=0;iter<barcodes.size();iter++) {
thisCode = barcodes.valueAt(iter);
Log.d("QR_VALUE","--"+thisCode.rawValue);
}
}
我可能建議Google搜索?我很確定那裏有圖書館。 – 2011-03-02 18:00:17
有庫可通過相機掃描QR碼。但我的要求有點不同。 – Veera 2011-03-02 18:06:10
Veera,您可以使用ZXing代碼從位圖執行此操作,而不是根據我的答案執行相機操作。 – 2011-03-02 18:48:24