如何从条形码中检索产品ID?

时间:2011-06-01 10:07:44

标签: android zxing

我使用了与Zxing Intent相同的方式从我的应用程序中打开扫描仪。但我的应用程序只是打开扫描仪,什么都不做另外,我得到一些FileNotfoundException。

我是否必须在清单中添加任何权限?

这是我使用Intent的课程:

public class BarCodes extends Activity {

   /** Called when the activity is first created. */
   @Override public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
      Button ok;

      ok=(Button) findViewById(R.id.b1);
      ok.setOnClickListener(new View.OnClickListener() {  

         @Override public void onClick(View v) {
            // TODO Auto-generated method stub
            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);
         }

      });
      System.out.println("SSSSSSSSSSSSS");
   }

   public void onActivityResult(int requestCode, int resultCode, Intent intent) {
      if (requestCode == 0) {   
          if (resultCode == RESULT_OK) {
              String contents = intent.getStringExtra("SCAN_RESULT");
              System.out.println("contentsssssssssssssssssssssss" + contents);
              String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
              // Handle successful scan
          } else if (resultCode == RESULT_CANCELED) {
              // Handle cancel
          }
       }
    }
}

LogCat也在这里:

java.lang.RunTimeException:Unable to instantiate activity componentInfo{com.pkg.BarCode...}  
caused by : java.lang.classNotFoundException:com.pkg.Scan in loader dalvik.System   Loader…  

可能是什么问题?

3 个答案:

答案 0 :(得分:0)

更详细地回答了这个问题herehere。至于为什么要获取FileNotFoundException,您必须提供更多细节,例如您要调用Zxing意图的代码以及logcat堆栈跟踪。

答案 1 :(得分:0)

您的错误与项目无关。 Android表示无法找到您的班级com.pkg.Scan。您必须修复项目设置。

但是我还建议您不要尝试编写自己的代码,而是使用code provided by the project通过Intent进行集成。

答案 2 :(得分:0)

步骤:

  1. 安装Apache Ant(http://www.youtube.com/watch?v=XJmndRfb1TU,此视频将帮助您完成此操作)并参考http://ant.apache.org/了解更多信息并下载ant
  2. 从ZXing主页下载ZXing源并将其解压缩(详情请访问:http://code.google.com/p/zxing/source/browse/trunk/android/)
  3. 使用Windows命令行(Run-> CMD)导航到解压缩的目录
  4. 输入'ant -f core / build.xml'或'ant -f android / build.xml'
  5. 输入Eclipse - >新的Android项目
  6. 右键单击项目文件夹 - >属性 - > Java构建路径 - >图书馆 - >添加外部JAR
  7. 如果您的Android设备上安装了条码扫描器,您可以让它扫描并返回结果,只需向其发送一个Intent即可。例如,您可以连接按钮以这种方式扫描QR码
  8. 它将产品代码存储在字符串值'contents'中 通过以自己的方式实现BarCode,获得乐趣:-)