欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

android ——虹软 人脸识别(V 3.1版本)自己添加混淆(官网无混淆代码)

程序员文章站 2022-07-14 09:59:58
...

在网上看到一些大佬说的混淆虹软的so文件,尝试了一下在自己的项目中使用,但是报了这个样一个错误,

Unexpected input type. Only archive types are supported, e.g., .jar, .zip, etc.

大意就是不支持这种类型的混淆,所以,建议你用到哪个类就直接混淆哪个类

如果你的项目开启了混淆的话,这个时候你使用虹软的人脸识别SDK的时候,当你第一步准备**人脸殷勤的时候就会报错,所以,你需要在你的 proguard-rules.pro 中添加如下混淆:

-keep class com.arcsoft.face.**{*;}

因为(请看虹软的**代码):

 int code = FaceEngine.activeOnline(this, Constants.ACTIVE_KEY, Constants.APP_ID, Constants.SDK_KEY);
            if(code == ErrorInfo.MOK){
                Log.i(TAG, "activeOnline success");
            }else if(code == ErrorInfo.MERR_ASF_ALREADY_ACTIVATED){
                Log.i(TAG, "already activated");
            }else{
                Log.i(TAG, "activeOnline failed, code is : " + code);
            }

 你能看到他是用 FaceEngine这个类里面的一个静态方法去**的人脸殷勤,所以你要把这个类给保护一下,避免混淆,点进去这个类,找到这个类所在的包里面你能看到包名

android ——虹软 人脸识别(V 3.1版本)自己添加混淆(官网无混淆代码)

如下你只需将这个类包下的所有类或者只混淆这一个类(建议你混淆这个包下的所有的类,避免其他类使用的时候也会报异常,反正虹软的代码是公有的)