更新记录
3.0.3(2024-02-02)
1、修复IOS提交到App Store时的相关问题; 2、注意:插件采用 OC & Swift 混编,Uniapp 要求必须静态编译Swift库,否则会云打包失败。但静态编译Swift库会造成插件大小较大。如有介意,请勿使用。
3.0.2(2024-01-24)
1、更新部分问题。
3.0.0(2023-12-04)
Version 3.0.0
1、新增大量配置项,详见使用说明 2、Android端修改为沉浸式状态栏,效果同IOS一致 3、通过配置项,支持拍照后,无需确认,直接返回
查看更多平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 12.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:支持 | 适用版本区间:12 - 17 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
PhotoIDCard
插件内共 2 个方法
ios 12.0
- (void)takePortrait:(NSDictionary *)options callback:(UniModuleKeepAliveCallback)callback { …… }
异步方法,调用该方法打开原生页面,接入后置摄像头输入流,在原生页面中操作点击「完成」按钮后,保存按照取景框截取的 身份证人像面图片到沙盒 并返回图片本地地址
options 配置项
showLoading : Bool
默认 false ,传入 true 可在拍照的时候展示Loading界面
foregroundColor : String
默认 #ffffffff ,传入 argb hex color 格式的字符串,可实现更改控件前景颜色(包括 页面标题文字颜色、页面标题栏返回按钮颜色、拍照框颜色、拍照提示文字颜色、重拍、拍照、完成按钮颜色)
maskColor : String
默认 #af000000 ,传入 argb hex color 格式的字符串,可实现更改页面整体覆盖面颜色
title : String
默认 身份证人像面拍照 ,传入字符串可更改页面标题
coverImage : String
默认 身份证人像图片 ,传入图片路径 如:static/certHead.png 即可。不传该参数,则展示默认图片,该参数传 空字符串,可去除默认图片
leftTop : String
默认 nil ,传入图片路径 如:static/leftTop.png 可在拍照框左上角显示对应图片
leftBottom : String
默认 nil ,传入图片路径 如:static/leftBottom.png 可在拍照框左下角显示对应图片
rightTop : String
默认 nil ,传入图片路径 如:static/rightTop.png 可在拍照框右上角显示对应图片
rightBottom : String
默认 nil ,传入图片路径 如:static/rightBottom.png 可在拍照框右下角显示对应图片
coverBorderWidth : Double
默认 1.0 拍照框边框宽度,传入 0.0 ,可去除边框,传入 其他数值,可设置拍照边框宽度
注意:必须传入Double数值,传入Int无效,可取值范围为:[0, 3]
coverCornerRadius : Double
默认 12.0 拍照边框圆角,传入 0.0 ,可去除边框圆角
注意:必须传入Double数值,传入Int无效
tip : String
默认 对齐身份证人像面并点击拍照 ,传入字符串可更改拍照提示,限制展示2行,文字过长会在尾部展示省略号 ……
retry : String
默认 重拍 ,传入字符串可更改按钮文字,限制2个字符
done : String
默认 完成 ,传入字符串可更改按钮文字,限制2个字符
returnImmediately : Bool
默认 false ,传入 true 可以在拍照完成,裁剪、保存结束后,立即返回,不再展示重拍 和 完成按钮
lightStatusBar : Bool
默认 true ,传入 false 可以展示黑色文字状态栏,传入 true 可以展示白色文字状态栏
- (void)takeEmblem:(NSDictionary *)options callback:(UniModuleKeepAliveCallback)callback { …… }
异步方法,调用该方法打开原生页面,接入后置摄像头输入流,在原生页面中操作点击「完成」按钮后,保存按照取景框截取的 身份证国徽面图片到沙盒 并返回图片本地地址
options 配置项
showLoading : Bool
默认 false ,传入 true 可在拍照的时候展示Loading界面
foregroundColor : String
默认 #ffffffff ,传入 argb hex color 格式的字符串,可实现更改控件前景颜色(包括 页面标题文字颜色、页面标题栏返回按钮颜色、拍照框颜色、拍照提示文字颜色、重拍、拍照、完成按钮颜色)
maskColor : String
默认 #af000000 ,传入 argb hex color 格式的字符串,可实现更改页面整体覆盖面颜色
title : String
默认 身份证国徽面拍照 ,传入字符串可更改页面标题
coverImage : String
默认 身份证国徽图片 ,传入图片路径 如:static/certHead.png 即可。不传该参数,则展示默认图片,该参数传 空字符串,可去除默认图片
leftTop : String
默认 nil ,传入图片路径 如:static/leftTop.png 可在拍照框左上角显示对应图片
leftBottom : String
默认 nil ,传入图片路径 如:static/leftBottom.png 可在拍照框左下角显示对应图片
rightTop : String
默认 nil ,传入图片路径 如:static/rightTop.png 可在拍照框右上角显示对应图片
rightBottom : String
默认 nil ,传入图片路径 如:static/rightBottom.png 可在拍照框右下角显示对应图片
coverBorderWidth : Double
默认 1.0 拍照框边框宽度,传入 0.0 ,可去除边框,传入 其他数值,可设置拍照边框宽度
注意:必须传入Double数值,传入Int无效,可取值范围为:[0, 3]
coverCornerRadius : Double
默认 12.0 拍照边框圆角,传入 0.0 ,可去除边框圆角
注意:必须传入Double数值,传入Int无效
tip : String
默认 对齐身份证国徽面并点击拍照 ,传入字符串可更改拍照提示,限制展示2行,文字过长会在尾部展示省略号 ……
retry : String
默认 重拍 ,传入字符串可更改按钮文字,限制2个字符
done : String
默认 完成 ,传入字符串可更改按钮文字,限制2个字符
returnImmediately : Bool
默认 false ,传入 true 可以在拍照完成,裁剪、保存结束后,立即返回,不再展示重拍 和 完成按钮
lightStatusBar : Bool
默认 true ,传入 false 可以展示黑色文字的状态栏,传入 true 可以展示白色文字的状态栏
android 5.0
minSDK 21
fun takePortrait(options: JSONObject, callback: UniJSCallback?) { …… }
异步方法,调用该方法打开原生页面,接入后置摄像头输入流,在原生页面中操作点击「完成」按钮后,保存按照取景框截取的 身份证人像面图片到手机 并返回图片本地地址
options 配置项同IOS版本一致
注意:插件最低支持 Android 5.0,但在 Android 6.0 及以上版本,才支持配置 lightStatusBar
fun takeEmblem(options: JSONObject, callback: UniJSCallback?) { …… }
异步方法,调用该方法打开原生页面,接入后置摄像头输入流,在原生页面中操作点击「完成」按钮后,保存按照取景框截取的 身份证国徽面图片到手机 并返回图片本地地址
options 配置项同IOS版本一致
注意:插件最低支持 Android 5.0,但在 Android 6.0 及以上版本,才支持配置 lightStatusBar
调用示例
VUE 拍摄并截取 身份证人像面
const PhotoIDCard = uni.requireNativePlugin('GrsisFee-PhotoIDCard-MainModule');
PhotoIDCard.takePortrait({
showLoading: true
}, (res) => {
if (res) {
console.log('身份证人像面图片:',res)
}
});
VUE 拍摄并截取 身份证国徽面
const PhotoIDCard = uni.requireNativePlugin('GrsisFee-PhotoIDCard-MainModule');
PhotoIDCard.takeEmblem({}, (res) => {
if (res) {
console.log('身份证国徽面图片:',res)
}
});