//在module的build.gradle中dependencies添加
implementation ‘cn.yipianfengye.android:zxing-library:2.2’
//冲突
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == ‘com.android.support’) {
if (!requested.name.startsWith(“multidex”)) {
details.useVersion ‘27.1.1’
}
}
}
}
//权限
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” />
android:name=".MyApplication"
//创建一个类
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ZXingLibrary.initDisplayOpinion(this);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 5) {
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(this, “解析结果:” + result, Toast.LENGTH_LONG).show();
} else if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_FAILED) {
Toast.makeText(this, “解析二维码失败”, Toast.LENGTH_LONG).show();
}
}
}
}
}
//main方法
public class MainActivity extends AppCompatActivity {
private Button button;
private EditText edit;
private Button button1;
private ImageView image;
private Bitmap mBitmap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate( savedInstanceState );
setContentView( R.layout.activity_main );
button = findViewById( R.id.button );
edit = findViewById( R.id.edit );
button1 = findViewById( R.id.button1 );
image = findViewById( R.id.image);
button.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, CaptureActivity.class);
startActivityForResult(intent,5);
}
} );
button1.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View view) {
String trim = edit.getText().toString().trim();
if (TextUtils.isEmpty(trim) ){
Toast.makeText(MainActivity.this, "您的输入为空!", Toast.LENGTH_SHORT).show();
return;
}
edit.setText("");
mBitmap = CodeUtils.createImage(trim, 400, 400, null);
// mBitmap = CodeUtils.createImage(trim, 400, 400, BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher));
image.setImageBitmap(mBitmap);
}
} );
}
}