Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
细水会流长
unidocs-zh
提交
66b36737
U
unidocs-zh
项目概览
细水会流长
/
unidocs-zh
与 Fork 源项目一致
Fork自
DCloud / unidocs-zh
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
66b36737
编写于
9月 26, 2022
作者:
细水会流长
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
快手小程序已支持scanCode API
上级
2be0515d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
88 addition
and
88 deletion
+88
-88
docs/api/system/barcode.md
docs/api/system/barcode.md
+88
-88
未找到文件。
docs/api/system/barcode.md
浏览文件 @
66b36737
### uni.scanCode(OBJECT)
调起客户端扫码界面,扫码成功后返回对应的结果。
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序、飞书小程序|QQ小程序|快手小程序|京东小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
x|√|
**OBJECT 参数说明**
|参数名|类型|必填|说明|平台差异说明|
|:-|:-|:-|:-|:-:|
|onlyFromCamera|Boolean|否|是否只能从相机扫码,不允许从相册选择图片|字节跳动小程序、百度小程序、支付宝小程序不支持此参数|
|scanType|Array|否|扫码类型,参考下方
`scanType的合法值`
|字节跳动小程序不支持此参数|
|autoDecodeCharset|Boolean|否|是否启用自动识别字符编码功能,默认为否|App|
|autoZoom|Boolean|否|是否启用自动放大,默认启用|仅 App-Android (3.5.4+) 支持|
|barCodeInput|Boolean|否|是否支持手动输入条形码|仅飞书小程序(V3.14.0)支持|
|hideAlbum|Boolean|否|是否隐藏相册(不允许从相册选择图片),只能从相机扫码。默认值为 false。|仅支付宝小程序支持|
|success|Function|否|接口调用成功的回调,返回内容详见返回参数说明。||
|fail|Function|否|接口调用失败的回调函数(识别失败、用户取消等情况下触发)||
|complete|Function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
|
**scanType的合法值**
|值|说明|
|:-|:-|
|barCode|一维码|
|qrCode|二维码|
|datamatrix|Data Matrix 码|
|pdf417|PDF417 条码|
**success 返回参数说明**
|参数|说明|平台差异说明|
|:-|:-|:-|
|result|所扫码的内容||
|scanType|所扫码的类型|App、微信小程序、百度小程序、QQ小程序、京东小程序、支付宝小程序|
|charSet|所扫码的字符集|App、微信小程序、百度小程序(所扫码的字符集,仅支持 Android 系统)、QQ小程序、京东小程序|
|path|当所扫的码为当前应用的合法二维码时,会返回此字段,内容为二维码携带的 path。|微信小程序、QQ小程序、京东小程序|
|rawData|原始数据,base64 编码|微信小程序、QQ小程序、京东小程序、支付宝小程序|
|code|扫码所得数据|支付宝小程序|
|qrCode|扫描二维码时返回二维码数据|支付宝小程序|
|barCode|扫描条形码时返回条形码数据|支付宝小程序|
|imageChannel|来源|支付宝小程序|
**示例**
```
javascript
// 允许从相机和相册扫码
uni
.
scanCode
({
success
:
function
(
res
)
{
console
.
log
(
'
条码类型:
'
+
res
.
scanType
);
console
.
log
(
'
条码内容:
'
+
res
.
result
);
}
});
// 只允许通过相机扫码
uni
.
scanCode
({
onlyFromCamera
:
true
,
success
:
function
(
res
)
{
console
.
log
(
'
条码类型:
'
+
res
.
scanType
);
console
.
log
(
'
条码内容:
'
+
res
.
result
);
}
});
// 调起条码扫描
uni
.
scanCode
({
scanType
:
[
'
barCode
'
],
success
:
function
(
res
)
{
console
.
log
(
'
条码类型:
'
+
res
.
scanType
);
console
.
log
(
'
条码内容:
'
+
res
.
result
);
}
});
```
**Tip**
-
App-vue如果想自定义扫码,可参考
[
uni-app中如何使用5+的原生界面控件
](
http://ask.dcloud.net.cn/article/35036
)
和
[
plus.barcode API
](
https://www.html5plus.org/doc/zh_cn/barcode.html
)
-
App-nvue,支持barcode组件,可自定义扫码界面。
[
详见
](
https://uniapp.dcloud.io/component/barcode
)
。App端自定义扫码界面,建议使用nvue方式。
-
App的扫码引擎,使用业内开源的通用扫码库,扫码效率比不过微信、支付宝等商业扫码库。如需更强的扫码效果,请使用支付宝提供的扫码插件:
[
https://ext.dcloud.net.cn/plugin?id=2636
](
https://ext.dcloud.net.cn/plugin?id=2636
)
-
微信小程序自定义扫码界面,可使用camera组件。
[
详见
](
https://uniapp.dcloud.io/component/camera
)
-
微信内嵌浏览器运行H5版时,可通过js sdk实现扫码,需要引入一个单独的js,
[
详见
](
https://ask.dcloud.net.cn/article/35380
)
-
在扫码界面点击返回也会进入
`fail`
回调中
-
支付宝小程序不支持
`success`
回调中的
`charSet`
,
`path`
-
HX 3.4.4之后版本 android 新增 检测到 QR 码时自动放大功能,提升扫码识别率。
### uni.scanCode(OBJECT)
调起客户端扫码界面,扫码成功后返回对应的结果。
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序、飞书小程序|QQ小程序|快手小程序|京东小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
√|√|
**OBJECT 参数说明**
|参数名|类型|必填|说明|平台差异说明|
|:-|:-|:-|:-|:-:|
|onlyFromCamera|Boolean|否|是否只能从相机扫码,不允许从相册选择图片|字节跳动小程序、百度小程序、支付宝小程序不支持此参数|
|scanType|Array|否|扫码类型,参考下方
`scanType的合法值`
|字节跳动小程序不支持此参数|
|autoDecodeCharset|Boolean|否|是否启用自动识别字符编码功能,默认为否|App|
|autoZoom|Boolean|否|是否启用自动放大,默认启用|仅 App-Android (3.5.4+) 支持|
|barCodeInput|Boolean|否|是否支持手动输入条形码|仅飞书小程序(V3.14.0)支持|
|hideAlbum|Boolean|否|是否隐藏相册(不允许从相册选择图片),只能从相机扫码。默认值为 false。|仅支付宝小程序支持|
|success|Function|否|接口调用成功的回调,返回内容详见返回参数说明。||
|fail|Function|否|接口调用失败的回调函数(识别失败、用户取消等情况下触发)||
|complete|Function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
|
**scanType的合法值**
|值|说明|
|:-|:-|
|barCode|一维码|
|qrCode|二维码|
|datamatrix|Data Matrix 码|
|pdf417|PDF417 条码|
**success 返回参数说明**
|参数|说明|平台差异说明|
|:-|:-|:-|
|result|所扫码的内容||
|scanType|所扫码的类型|App、微信小程序、百度小程序、QQ小程序、京东小程序、支付宝小程序|
|charSet|所扫码的字符集|App、微信小程序、百度小程序(所扫码的字符集,仅支持 Android 系统)、QQ小程序、京东小程序|
|path|当所扫的码为当前应用的合法二维码时,会返回此字段,内容为二维码携带的 path。|微信小程序、QQ小程序、京东小程序|
|rawData|原始数据,base64 编码|微信小程序、QQ小程序、京东小程序、支付宝小程序|
|code|扫码所得数据|支付宝小程序|
|qrCode|扫描二维码时返回二维码数据|支付宝小程序|
|barCode|扫描条形码时返回条形码数据|支付宝小程序|
|imageChannel|来源|支付宝小程序|
**示例**
```
javascript
// 允许从相机和相册扫码
uni
.
scanCode
({
success
:
function
(
res
)
{
console
.
log
(
'
条码类型:
'
+
res
.
scanType
);
console
.
log
(
'
条码内容:
'
+
res
.
result
);
}
});
// 只允许通过相机扫码
uni
.
scanCode
({
onlyFromCamera
:
true
,
success
:
function
(
res
)
{
console
.
log
(
'
条码类型:
'
+
res
.
scanType
);
console
.
log
(
'
条码内容:
'
+
res
.
result
);
}
});
// 调起条码扫描
uni
.
scanCode
({
scanType
:
[
'
barCode
'
],
success
:
function
(
res
)
{
console
.
log
(
'
条码类型:
'
+
res
.
scanType
);
console
.
log
(
'
条码内容:
'
+
res
.
result
);
}
});
```
**Tip**
-
App-vue如果想自定义扫码,可参考
[
uni-app中如何使用5+的原生界面控件
](
http://ask.dcloud.net.cn/article/35036
)
和
[
plus.barcode API
](
https://www.html5plus.org/doc/zh_cn/barcode.html
)
-
App-nvue,支持barcode组件,可自定义扫码界面。
[
详见
](
https://uniapp.dcloud.io/component/barcode
)
。App端自定义扫码界面,建议使用nvue方式。
-
App的扫码引擎,使用业内开源的通用扫码库,扫码效率比不过微信、支付宝等商业扫码库。如需更强的扫码效果,请使用支付宝提供的扫码插件:
[
https://ext.dcloud.net.cn/plugin?id=2636
](
https://ext.dcloud.net.cn/plugin?id=2636
)
-
微信小程序自定义扫码界面,可使用camera组件。
[
详见
](
https://uniapp.dcloud.io/component/camera
)
-
微信内嵌浏览器运行H5版时,可通过js sdk实现扫码,需要引入一个单独的js,
[
详见
](
https://ask.dcloud.net.cn/article/35380
)
-
在扫码界面点击返回也会进入
`fail`
回调中
-
支付宝小程序不支持
`success`
回调中的
`charSet`
,
`path`
-
HX 3.4.4之后版本 android 新增 检测到 QR 码时自动放大功能,提升扫码识别率。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录