Java Zxing条码扫描器的实现意图
我一直在到处寻找在我的应用程序中实现条形码扫描仪/ 我已经包含了代码,如果安装了条形码扫描仪,用户可以进行扫描,但是如果尚未安装,我现在需要一些东西来提示用户下载应用程序?我跟随一个例子走到了这一步 这是我的密码Java Zxing条码扫描器的实现意图,java,eclipse,barcode,zxing,Java,Eclipse,Barcode,Zxing,我一直在到处寻找在我的应用程序中实现条形码扫描仪/ 我已经包含了代码,如果安装了条形码扫描仪,用户可以进行扫描,但是如果尚未安装,我现在需要一些东西来提示用户下载应用程序?我跟随一个例子走到了这一步 这是我的密码 package com.example.zxingscan; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.V
package com.example.zxingscan;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
HandleClick hc = new HandleClick();
findViewById(R.id.butQR).setOnClickListener(hc);
}
private class HandleClick implements OnClickListener{
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;
}
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) {
tvStatus.setText(intent.getStringExtra("SCAN_RESULT_FORMAT"));
tvResult.setText(intent.getStringExtra("SCAN_RESULT"));
} else if (resultCode == RESULT_CANCELED) {
tvStatus.setText("Press a button to start a scan.");
tvResult.setText("Scan cancelled.");
}
}
}
}
首先,创建一个对话框,简要说明情况,并建议从谷歌Play安装免费的ZXing扫描仪应用程序。添加“取消”和“安装”按钮。我不会在这里解释怎么做。就拿这个例子来说吧 用户确认后,单击“安装”按钮,您只需开始以下操作:
startActivity(new Intent(Intent.ACTION_VIEW,
Uri.parse("market://details?id=com.google.zxing.client.android")));
市场协议URI可用于打开来自Google Play market的应用程序详细信息页面。有关更多信息,请参阅