0

我正在开发一个应用程序,我正在使用 zxing 库读取 QR 码。我正在调用 zxing 库来读取二维码:

public class QRScanner extends CaptureActivity {
    TextView tv;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.qrscanner_layout);  
}

@Override 
public void handleDecode(Result rawResult, Bitmap barcode) {
    tv =(TextView) findViewById(R.id.textview_output);
    tv.setText(rawResult.getText());
}

现在我想从

public void handleDecode(Result rawResult, Bitmap barcode) {
    //Want to call new activity using intent and pass result in new activity.
}

我尝试了一个代码:

public void handleDecode(Result rawResult, Bitmap barcode) {
    String result = rawResult.getText();
    Intent intent = new Intent(QRScanner.this,Activity2.class);
    intent.putExtra("Result", result);
    startActivity(intent);
}

但它不起作用。至于如何在模拟器上测试这段代码我不知道。

当我尝试在设备上运行此应用程序时,它会终止。我该怎么做。我的应用程序需要在下一个活动中需要二维码扫描的结果。

请建议我该怎么做。

谢谢你。

4

2 回答 2

0

您是否在清单中声明了 Activity2?将 getText() 包装在 try-catch ...

String result = "";
try {
    result = rawResult.getText();
catch (NullPointerException npe) {
    Log.e("handleDecode()", "Result was null.", npe);
}

至少如果结果为空,您将传递“”。

于 2013-02-09T13:09:58.653 回答
0

我得到了应用程序终止的原因。当我阅读链接然后明白我没有在清单中声明库文件时。因为我不知道它应该必须声明。

谢谢你。

于 2013-02-11T08:53:25.260 回答