1.新建一个项目
2.下载zxing的core-3.3.3.jar包,放到xxx/libs下,右键选add as library
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e3c9f052bcc2910ad1bd3409b8f47e19.png)
3.在AndroidManifest.xml的application标签下加
<activity
android:name="com.journeyapps.barcodescanner.CaptureActivity"
android:screenOrientation="fullSensor"
tools:replace="screenOrientation" />
4.在AndroidManifest.xml的manifest标签下加
<uses-permission android:name="android.permission.CAMERA"/>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/72c4880379b7c5ab3879d6fd60e12d92.png)
5.build.grade里添加依赖:
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation files('libs/core-3.3.3.jar')
implementation('com.journeyapps:zxing-android-embedded:3.6.0') { transitive = false }
}
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/804a128b65b6a50940a3e321170daf83.png)
6.展示页面activity_main.xml中增加按钮及图片
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:layout_editor_absoluteY="81dp">
<RelativeLayout
android:id="@+id/activity_main"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="110dp"
android:onClick="onShowList"
android:text="刷新/加载"
android:visibility="invisible" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/button"
android:layout_alignEnd="@+id/button"
android:layout_alignRight="@+id/button"
android:layout_centerHorizontal="true"
android:layout_marginTop="56dp"
android:layout_marginEnd="0dp"
android:layout_marginRight="0dp"
android:text="生成二维码" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="59dp"
android:onClick="onScanQrcode"
android:text="扫描二维码" />
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="233dp"
android:ems="10"
android:hint="请输入内容"
android:layout_centerHorizontal="true"
android:inputType="textPersonName" />
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="79dp"
tools:srcCompat="@tools:sample/avatars" />
</RelativeLayout>
</android.support.constraint.ConstraintLayout>
7.在xxx.java中调用扫描、生成二维码功能
package com.example.myapplication;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.BitmapFactory;
import android.hardware.Camera;
import android.os.Environment;
import android.support.annotation.DrawableRes;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.content.Intent;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
impor