AnyLifeZLB / FaceVerificationSDK

Android On_device 1:1 Face Recognition And Alive Detect;1:N & M:N Face Search SDK 。 🧒 离线版设备端Android1:1人脸识别动作活体检测,静默活体检测 以及1:N M:N 人脸搜索 SDK 封装
476 stars 95 forks source link

采集人脸时报错 #36

Closed WuGangAHa closed 5 months ago

WuGangAHa commented 6 months ago

采集人脸时报错:打开相机后,采集人脸报错,。如下,麻烦看一下

05-17 18:50:15.105 W/System.err(18460): java.io.FileNotFoundException: This file can not be opened as a file descriptor; it is probably compressed 05-17 18:50:15.105 W/System.err(18460): at android.content.res.AssetManager.nativeOpenAssetFd(Native Method) 05-17 18:50:15.105 W/System.err(18460): at android.content.res.AssetManager.openFd(AssetManager.java:898) 05-17 18:50:15.105 W/System.err(18460): at com.ai.face.core.utils.AiUtil.Companion(SourceFile:6) 05-17 18:50:15.105 W/System.err(18460): at I1I.IL1Iii.(SourceFile:20) 05-17 18:50:15.105 W/System.err(18460): at com.ai.face.base.baseImage.BaseImageDispose.(SourceFile:23) 05-17 18:50:15.105 W/System.err(18460): at com.ai.face.base.baseImage.BaseImageDispose.(SourceFile:1) 05-17 18:50:15.105 W/System.err(18460): at com.example.bestlayface.verify.AddBaseImageActivity.onCreate(AddBaseImageActivity.java:45) 05-17 18:50:15.105 W/System.err(18460): at android.app.Activity.performCreate(Activity.java:8000) 05-17 18:50:15.105 W/System.err(18460): at android.app.Activity.performCreate(Activity.java:7984) 05-17 18:50:15.105 W/System.err(18460): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1310) 05-17 18:50:15.105 W/System.err(18460): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3425) 05-17 18:50:15.105 W/System.err(18460): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3604) 05-17 18:50:15.105 W/System.err(18460): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) 05-17 18:50:15.105 W/System.err(18460): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 05-17 18:50:15.106 W/System.err(18460): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 05-17 18:50:15.106 W/System.err(18460): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2069) 05-17 18:50:15.106 W/System.err(18460): at android.os.Handler.dispat

AnyLifeZLB commented 6 months ago

@WuGangAHa 麻烦按照这个模版 (https://github.com/AnyLifeZLB/FaceVerificationSDK/issues/1) 填写一下问题详细信息 https://github.com/AnyLifeZLB/FaceVerificationSDK/issues/1

AnyLifeZLB commented 6 months ago

Google 一下 大概

android { ... aaptOptions { noCompress '你不需要压缩的资源文件' } }

AnyLifeZLB commented 5 months ago

用友移动开发的朋友大家升级到官方最新的构建方式就OK了。

集成方案是: 1、使用的混合开发,H5的UI , 通过以前的apicloud(现在是用友收购了,叫移动开发)打包成apk的 2、通过用友移动插件的开发文档,来集成你的SDK,大概流程就是:H5里面调用原生插件,用友移动开发做了一个中转,H5能够通过JS的方式传递参数给原生插件和使用原生插件的功能

现在遇到的问题: 我按照用友移动插件文档开发好了插件,集成到了我的H5项目中,在通过JS调用原生插件功能时,发起调用相机请求,相机能够正常打开,也能够加载出像你demo的那个“更换底片”功能的人脸采集 界面(我是按照你的demo做的),但是1秒左右,app就直接闪退,通过查日志发现就是我在 Issues 中提交的那个 采集人脸时报错 的问题。然后我们排查可能是不是 assets 文件夹未打包到aar的原因,同时也按照你在 Issues 中的回复,添加了 build.gradle 的配置。依然还是报 【java.io.FileNotFoundException: This file can not be opened as a file descriptor; it is probably compressed】这个错误

目前分析可能的原因是 1、用友移动开发 这边的 打包把 assets 文件夹给压缩了,但官方还不能解决(已经解决,Done,升级到最新)