怎么集成:
1、在根目录的build.gradle中添加jitpack依赖:
allprojects {
repositories {
maven { url "https://jitpack.io" }
}
}
2、在project的build.gradle中添加YXing依赖:
implementation 'com.github.amggg:YXing:releaseVersion'
简单调用:
ScanCodeConfig.create(MainActivity.this)
//设置扫码页样式 ScanStyle.NONE:无 ScanStyle.QQ :仿QQ样式 ScanStyle.WECHAT :仿微信样式 ScanStyle.CUSTOMIZE : 自定义样式
.setStyle(ScanStyle.NONE)
//扫码成功是否播放音效 true : 播放 false : 不播放
.setPlayAudio(true)
.buidler()
//跳转扫码页 扫码页可自定义样式
.start(ScanCodeActivity.class);
全部参数:
ScanCodeConfig.create(MainActivity.this)
//设置扫码页样式 ScanStyle.NONE:无 ScanStyle.QQ :仿QQ样式 ScanStyle.WECHAT :仿微信样式 ScanStyle.CUSTOMIZE : 自定义样式
.setStyle(ScanStyle.CUSTOMIZE)
//扫码成功是否播放音效 true : 播放 false : 不播放
.setPlayAudio(true)
//设置音效音频
.setAudioId(R.raw.beep)
////////////////////////////////////////////
//以下配置 在style为 ScanStyle.CUSTOMIZE 时生效
//设置扫码框位置 left : 边框左边位置 top : 边框上边位置 right : 边框右边位置 bottom : 边框下边位置 单位/dp
.setScanRect(new ScanRect(50, 200, 300, 450))
// isUsePx : 是否使用px单位 true : 使用(px) fase : 不使用(dp) 默认false
// .setScanRect(new ScanRect(50, 200, 300, 450), false)
//是否显示边框上四个角标 true : 显示 false : 不显示
.setShowFrame(true)
//设置边框上四个角标颜色
.setFrameColor(R.color.whilte)
//设置边框上四个角标圆角 单位 /dp
.setFrameRaduis(2)
//设置边框上四个角宽度 单位 /dp
.setFrameWith(4)
//设置边框上四个角长度 单位 /dp
.setFrameLenth(15)
//设置是否显示边框外部阴影 true : 显示 false : 不显示
.setShowShadow(true)
//设置边框外部阴影颜色
.setShaowColor(R.color.black_tran30)
//设置扫码条运动方式 ScanMode.REVERSE : 往复运动 ScanMode.RESTART :重复运动 默认ScanMode.RESTART
.setScanMode(ScanMode.REVERSE)
//设置扫码条扫一次时间 单位/ms 默认3000
.setScanDuration(3000)
//设置扫码条图片
.setScanBitmapId(R.mipmap.scan_wechatline)
//////////////////////////////////////////////
.buidler()
//跳转扫码页 扫码页可自定义样式
.start(ScanCodeActivity.class);
接收扫码数据:
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//接收扫码结果
if(resultCode == RESULT_OK && requestCode == ScanCodeConfig.QUESTCODE && data != null){
Bundle extras = data.getExtras();
if(extras != null){
String code = extras.getString(ScanCodeConfig.CODE_KEY);
tvCode.setText(String.format("%s%s", "结果: " , code));
}
}
}
更多功能请查看使用文档。
使用文档:https://www.jianshu.com/p/c549f91cb9c5
APP下载链接:https://www.pgyer.com/FMi9