本文实例为大家分享了Android扫描和生成二维码的具体代码,供大家参考,具体内容如下
MainActivity.java
public class MainActivity extends AppCompatActivity {
private ImageView mImageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button =findViewById(R.id.btn);
mImageView =findViewById(R.id.img);
button.set Listener(new View. Listener() { //点击按钮扫描二维码
@Override
public void (View view) {
Intent intent = new Intent(MainActivity.this,CaptureActivity.class);
startActivityForResult(intent,2);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==200&& resultCode==RESULT_OK){
if (data!=null){
String content = data.getStringExtra(Constant.CODED_CONTENT);
if (TextUtils.isEmpty(content)){
Toast.makeText(MainActivity.this, \"您的输入为空!\", Toast.LENGTH_SHORT).show();
return;
}
Bitmap logo = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);
try {
Bitmap bitmap = CodeCreator.createQRCode(content, 400, 400, logo);
mImageView.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
Toast.makeText(MainActivity.this,\"扫描\"+content,Toast.LENGTH_SHORT).show();
}
}
}
}
activity.main.
<android.support.constraint.ConstraintLayout ns:android=\"http://schemas.android.com/apk/res/android\" ns:app=\"http://schemas.android.com/apk/res-auto\" ns:tools=\"http://schemas.android.com/tools\" android:layout_width=\"match_parent\" android:layout_height=\"match_parent\" tools:context=\".MainActivity\" android:orientation=\"vertical\"> <Button android:id=\"@+id/btn\" android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:text=\"扫一扫\"/> <ImageView android:id=\"@+id/img\" android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" /> </android.support.constraint.ConstraintLayout>
需要配置的权限
<uses-permission android:name=\"android.permission.INTERNET\"/> <uses-permission android:name=\"android.permission.CAMERA\"></uses-permission> <uses-permission android:name=\"android.permission.VIBRATE\" /> <uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"></uses-permission> <uses-feature android:name=\"android.hardware.camera\" /> <uses-feature android:name=\"android.hardware.camera.autofocus\" /> <uses-permission android:name=\"android.permission.FLASHLIGHT\" />
build.gradle
minSdkVersion 16 //配置16 implementation\'com.github.yuzhiqiang1993:zxing:2.2.1\' //依赖
外部build.gradle
allprojects {
repositories {
google()
jcenter()
maven { url \'https://jitpack.io\' } //加这行代码
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
继续阅读与本文标签相同的文章
上一篇 :
Android登录代码MVP架构详解
下一篇 :
CVE 2017-0199漏洞利用的新姿势
-
《21天学通C语言(第5版)》| 每日读本书
2026-05-19栏目: 教程
-
Linux rsyslog 简记
2026-05-19栏目: 教程
-
Oracle 左连接(left join) 排序问题
2026-05-19栏目: 教程
-
Java同步:synchronized解析
2026-05-19栏目: 教程
-
Oracle查询结果集无法被redis缓存序列化问题
2026-05-19栏目: 教程
