移动端OCR开发文档

发布时间:2023-3-03 | 杂志分类:其他
免费制作
更多内容

移动端OCR开发文档

103附录二 常见问题(激活失败问题请参考对应 OCR 产品的错误码表)Android 部分:问题一: 集成配置后报错,erro 为导入 module 冲突解决办法: 有一个 module 模块使用 implementation 或 compile 方式引入(如图 1)其他模块都使用 compileOnly 或 provided 方式应用 jar 包(如图 2)implementation /compileimplementation 和 compile 是对所有的 build type 以及 favlors 都会参与编译并且打包到最终的 apk 文件中。compileOnly/provided :compileOnly 和 provided 是对所有的 build type 以及 favlors 只在编译时使用,不打包到最终 apk。只需一个 jar 包被打包到 apk 就可以,其他 jar 包只在编译时使用问题二:能激活成功,但一直识别失败,不识别解决办法: 这个接口 EtSetPlateROI,识别区域设置的与显示的不一致。如有问题,联系 OCR 厂商技术支持。问题三:识别过慢,... [收起]
[展开]
移动端OCR开发文档
粉丝: {{bookData.followerCount}}
文本内容
第101页

101

附录一 Android 接口参数描述

1 授权类型表(用于初始化核心的参5)

校验类型 id(十六进制) 校验信息

设备序列号 0x01 校验硬件设备号

项目(旧版不推荐) 0x02 校验包名和应用名

项目(新版推荐) 0x03 只校验包名

注:校验类型三选其一。信息校验失败,初始化核心会激活

失败,返回错误码24

2 产品类型表(用于初始化核心的参4)

类型 id(十六进制) 备注

银行卡 0x04 简称Bank

二代证正面 0x02 简称SIDCard

驾驶证 0x07 简称DL

行驶证 0x05 简称VL

机动车车辆识别代号 0x01 简称VIN

车牌 0x06 简称Plate

注:类型不匹配,初始化核心会激活失败,返回错误码20

3 相机扫描识别状态错误描述

public native int ScanStreamNV21(byte[] streamnv21, int cols, int raws, int

[]Line,char[] cardno, int []wrapdata);

第102页

102

此接口基于NV21字节流识别,返回0代表成功,其他值表示未发现银行卡

如果长时间不识别,并且银行卡很清晰,

public native void SetRegion (int left,int top,int right,int bottom);

设置识别区域不正确

第103页

103

附录二 常见问题

(激活失败问题请参考对应 OCR 产品的错误码表)

Android 部分:

问题一: 集成配置后报错,erro 为导入 module 冲突

解决办法: 有一个 module 模块使用 implementation 或 compile 方式引入(如

图 1)

其他模块都使用 compileOnly 或 provided 方式应用 jar 包(如图 2)

implementation /compile

implementation 和 compile 是对所有的 build type 以及 favlors 都会参与编译

并且打包到最终的 apk 文件中。

compileOnly/provided :

compileOnly 和 provided 是对所有的 build type 以及 favlors 只在编译时使用,

不打包到最终 apk。

只需一个 jar 包被打包到 apk 就可以,其他 jar 包只在编译时使用

问题二:能激活成功,但一直识别失败,不识别

解决办法: 这个接口 EtSetPlateROI,识别区域设置的与显示的不一致。如有问

题,联系 OCR 厂商技术支持。

问题三:识别过慢,但是 demo 中识别速度没有影响

第104页

104

解决办法: 一般是对应的 cpu 类型设置不对,jnilibs 文件下的.so 文件配置错误

问题四:崩溃,erro 错误为没有 imei 授权

解决办法: 在项目中 manifest 文件中配置授权,以及进行权限申请

问题五: 手持机等非手机 android 设备识别,不稳定(识别时间长,偶尔识别等

问题)

解决办法: 1) 适配问题 2) cpu 类型配置不对(问题三类似)

问题六: 多次初始化以及释放之后进行多次初始化导致核心崩溃

Erro : fatal singal 6 (SIGABRT) ,code -6(si_tkill)int tid

解决办法: 避免多次初始化和释放,切记和 activity 生命周期进行绑定,不推荐用

fragment 的生命周期进行绑定初始化和释放 api 的方法.问题七: 是否可以使用 nv21 格式数据转化为 jpeg 格式去使用图片识别接口?

解决办法: 可以,但是需要注意有些对分辨率要求高的识别产品,则不建议使用

原因 : 因为相机预览分辨率也就是 nv21 数据分辨率较低,而拍照的数据分辨率

较高这一点可能会影响识别效果.问题八:我的产品是哪个版本?

方法一:看 SDK 开发包压缩包的名字。(以二代证为例)

方法二:在核心 API 中

iOS 部分:

第105页

105

问题一:Archieve 打包报错

ld: bitcode bundle could not be generated because 'XXX' was built without full

bitcode. All object files and libraries for bitcode must be generated from Xcode

Archive or Install build for architecture armv7

解决办法:Targets -> Build Settings -> Build Options -> Enable Bitcode -> NO

禁用 Bitcode 即可。

对于 iOS,bitcode 是可选的。

对于 watchOS,bitcode 是必须的。

Mac OS 不支持 bitcode。

一般情况下 Bitcode 禁用没有什么影响。若您需要支持 Bitcode 的核心库,请联

系 SDK 供应商单独编译。

问题二:Init Error xx(错误码)

激活错误参考产品对应的错误码表,表中有对应的解决办法。

问题三:我的产品是哪个版本?

方法一:看 SDK 开发包压缩包的名字。(以二代证为例)

方法二:NSLog 打印核心(xxx.a 对应的.h)的 sdkVersion 查看。(以二代证、银行卡为例)

第106页

106

第107页

107

附录三 权限说明

Android:

·<uses-permission android:name=\"android.permission.CAMERA\"/>

调用相机进行相机预览扫描/拍照,识别相机中预览/拍照数据

·<uses-permission

android:name=\"android.permission.READ_EXTERNAL_STORAGE\"/>

从相册选择图片识别,需要读取 SD 卡权限

·<uses-permission

android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>

保存识别后的裁切图片,需要写入 SD 卡权限

·<uses-permission android:name=\"android.permission.VIBRATE\"/>

扫描识别成功,震动提示,需要震动权限

·<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>

读取手机设备权限(SD 卡授权需要。普通授权可忽略)

iOS:

·相机权限:NSCameraUsageDescription

打开相机所需权限(视频流识别、拍照识别用到)。

·相册权限:NSPhotoLibraryUsageDescription

iOS10 打开相册选择图片所需权限(导入识别用到)

百万用户使用云展网进行电子书免费制作,只要您有文档,即可一键上传,自动生成链接和二维码(独立电子书),支持分享到微信和网站!
收藏
转发
下载
免费制作
其他案例
更多案例
免费制作
x
{{item.desc}}
下载
{{item.title}}
{{toast}}