Android 如何检索条形码的类型和产品信息
我已经创建了一个条形码扫描仪,它通过intent调用zxing条形码扫描仪。它检索结果代码并扫描结果格式。如何从zxing条形码扫描仪中检索类型(如文本或产品)。我还想检索产品信息,如名称、价格。我搜索并找到了这个问题的解决方案,但它非常混乱 这是我的密码Android 如何检索条形码的类型和产品信息,android,barcode-scanner,Android,Barcode Scanner,我已经创建了一个条形码扫描仪,它通过intent调用zxing条形码扫描仪。它检索结果代码并扫描结果格式。如何从zxing条形码扫描仪中检索类型(如文本或产品)。我还想检索产品信息,如名称、价格。我搜索并找到了这个问题的解决方案,但它非常混乱 这是我的密码 public void onClick(View arg0) { Intent intent = new Intent("com.google.zxing.client.android.SCAN"); swi
public void onClick(View arg0)
{
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
switch(arg0.getId()){
case R.id.butQR:
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
break;
case R.id.butProd:
intent.putExtra("SCAN_MODE", "PRODUCT_MODE");
break;
case R.id.butOther:
intent.putExtra("SCAN_FORMATS", "CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF,CODABAR");
break;
}
startActivityForResult(intent, 0); //Barcode Scanner to scan for us
}
}
public void onActivityResult(int requestCode, int resultCode, Intent intent)
{
if (requestCode == 0)
{
TextView tvStatus=(TextView)findViewById(R.id.tvStatus);
TextView tvResult=(TextView)findViewById(R.id.tvResult);
if (resultCode == RESULT_OK)
{
Intent intent1=new Intent(getApplicationContext(), Display.class);
intent1.putExtra("result_format", intent.getStringExtra("SCAN_RESULT_FORMAT"));
intent1.putExtra("result", intent.getStringExtra("SCAN_RESULT"));
startActivity(intent1);
}
else if (resultCode == RESULT_CANCELED)
{
tvStatus.setText("Press a button to start a scan.");
tvResult.setText("Scan cancelled.");
}
}
如果我理解错误,你想从条形码中读取产品信息吗?条形码通常只是一个数字,如果你想在仓库里买到商品的条形码。当然,可以在条形码内设置信息,如产品详细信息,但他们不是这样做的。通常,他们只在条形码中设置一个id号,该条形码将与包含产品详细信息的数据库链接。好的。这意味着条形码只包含数字?如何检索条形码类型?使用ZXing不是强制性的,当然你可以设置例如“面包1,15美元”并从条形码中读取,但这并不常见。所以大多数情况下,你只能得到一个数字。如果您想构建一个将生成自定义条形码的应用程序,这是可能的。但是,如果你想构建一个能够读取所有条形码的应用程序,那么你的成功率就会降低。很久以前,我用zxing构建了一个java应用程序来生成条形码,这个周末我会看一看,并尝试给你一个例子。有一件事:你知道可以链接到应用程序的条形码吗?在该条形码中存储Uri。这是一个很好的例子,条形码不与代码编号一起使用。