布局一个button’按钮
MainActivity
package wanghuiqi.bawie.com.qr_code;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.uuzuche.lib_zxing.activity.CaptureActivity;
import com.uuzuche.lib_zxing.activity.CodeUtils;
import com.uuzuche.lib_zxing.activity.ZXingLibrary;
public class MainActivity extends AppCompatActivity {
private Button mQrCode;
private int REQUEST_CODE=1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mQrCode = findViewById(R.id.QR_code);
ZXingLibrary.initDisplayOpinion(this);
//打开默认扫描二维码页面
mQrCode.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,CaptureActivity.class);
startActivityForResult(intent,REQUEST_CODE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//处理二维码扫描结果
if (requestCode==REQUEST_CODE){
//处理扫描结果(在页面上显示)
if (null!=data){
Bundle bundle = data.getExtras();
if (bundle==null){
return;
}
if (bundle.getInt(CodeUtils.RESULT_TYPE)==CodeUtils.RESULT_SUCCESS){
String result = bundle.getString(CodeUtils.RESULT_STRING);
Toast.makeText(MainActivity.this , "解析结果:"+result, Toast.LENGTH_SHORT).show();
}else if(bundle.getInt(CodeUtils.RESULT_TYPE)==CodeUtils.RESULT_FAILED){
Toast.makeText(MainActivity.this, "解析二维码失败", Toast.LENGTH_SHORT).show();
}
}
}
}
}
权限
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
依赖
compile 'cn.yipianfengye.android:zxing-library:2.2'