尝试下面的代码。 它是我自己使用它的工作代码。
public class MyTestActivity extends Activity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
Button b = new Button(this);
b.setText("Scan");
b.setWidth(100);
LinearLayout ll = new LinearLayout(this);
b.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
startActivityForResult(intent, 0);
}
});
ll.addView(b);
setContentView(ll);
}
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
// IntentResult scanResult = IntentIntegrator.parseActivityResult(
// requestCode, resultCode, intent);
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contents = intent.getStringExtra("SCAN_RESULT");
String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
Dialog d = new Dialog(this);
LinearLayout ll = new LinearLayout(this);
TextView tv = new TextView(this);
tv.setText(contents+" "+format);
ll.addView(tv);
d.setContentView(ll);
d.show();
}
}
}
}
希望它有助于
它应该只是没有摄像头权限相同。由于您正在通过intent启动Zxing活动,并且它使用相机处理所有事情,所以只有Zxing应用程序需要保持CAMERA权限。 – FoamyGuy 2012-02-02 00:14:21
仅供参考甚至zxing的androidtest示例包在清单文件中都有权限。 – 2012-02-02 00:21:09
是的,的确,它的工作没有这个权限集。我仍然用它作为预防措施。 :) – 2012-02-02 00:29:33