配置流程

最近更新时间:2019-07-09 14:49:15

接入配置

  • 云 OCR SDK(WbCloudOcr)最低支持到 Android API 14: Android 4.0(ICS),请在构建项目时注意。
  • 云 OCR SDK 将以 AAR 文件的形式提供。另外 OCR SDK 同时需要依赖云公共组件 WBCloudNormal,同样也是以 AAR 文件的形式提供。
  • 需要添加下面文档中所示的依赖(将提供的 AAR 文件加入到 App 工程的 libs 文件夹下面,并且在 build.gradle 中添加如下配置):
android{
     //...
     repositories {
        flatDir {
            dirs 'libs' //this way we can find the .aar file in libs folder
        }
    }
}
//添加依赖
dependencies {
     //0. appcompat-v4
 compile 'com.android.support:appcompat-v4:23.1.1'
    //1. 云OCR SDK
      compile(name: 'WbCloudOcrSdk', ext: 'aar')
  //2.云公共组件
        compile(name: 'WbCloudNormal', ext: 'aar')    }

混淆配置

云 OCR 产品的混淆规则分为三部分,分别是云 OCR SDK 的混淆规则,云公共组件的混淆规则及依赖的第三方库混淆规则。

  • 云 OCR SDK 的混淆规则
######################云 ocr 混淆规则 ocr-BEGIN###########################
-keepattributes InnerClasses
-keep public class com.webank.mbank.ocr.WbCloudOcrSDK{
    public <methods>;
    public static final *;
}
-keep public class com.webank.mbank.ocr.WbCloudOcrSDK$*{
    *;
}

-keep public class com.webank.mbank.ocr.tools.ErrorCode{
    *;
}

-keep public class com.webank.mbank.ocr.net.*$*{
    *;
}
-keep public class com.webank.mbank.ocr.net.*{
    *;
}
#######################云 ocr 混淆规则 ocr-END#############################

您可以将如上代码拷贝到您的混淆文件中,也可以将 SDK 中的webank-cloud-ocr-proguard-rules.pro拷贝到主工程根目录下,然后通过-include webank-cloud-ocr-rules.pro加入到您的混淆文件中。

  • 云公共组件的混淆规则
#######################webank normal混淆规则-BEGIN#############################
#不混淆内部类
-keepattributes InnerClasses
-keepattributes *Annotation*
-keepattributes Signature

-keep, allowobfuscation @interface com.webank.normal.xview.Inflater
-keep, allowobfuscation @interface com.webank.normal.xview.Find
-keep, allowobfuscation @interface com.webank.normal.xview.BindClick

-keep @com.webank.normal.xview.Inflater class *
-keepclassmembers class * {
    @com.webank.normal.Find *;
    @com.webank.normal.BindClick *;
}

-keep public class com.webank.normal.net.*$*{
    *;
}
-keep public class com.webank.normal.net.*{
    *;
}
-keep public class com.webank.normal.thread.*{
   *;
}
-keep public class com.webank.normal.thread.*$*{
   *;
}
-keep public class com.webank.normal.tools.WLogger{
    *;
}

#webank normal 包含的第三方库 bugly
-keep class com.tencent.bugly.webank.**{
    *;
}

#wehttp 混淆规则
-dontwarn com.webank.mbank.okio.**

-keep class com.webank.mbank.wehttp.**{
    public <methods>;
}
-keep interface com.webank.mbank.wehttp.**{
    public <methods>;
}
-keep public class com.webank.mbank.wehttp.WeLog$Level{
    *;
}
-keep class com.webank.mbank.wejson.WeJson{
    public <methods>;
}


#######################webank normal混淆规则-END#############################

您可以将如上代码拷贝到您的混淆文件中,也可以将 SDK 中的webank-cloud-normal-proguard-rules.pro拷贝到主工程根目录下,然后通过-include webank-cloud-normal-rules.pro加入到您的混淆文件中。

  • 云 OCR 依赖的第三方库的混淆规则
云 OCR 依赖的第三方库的混淆规则全部内容变更为:
######################云OCR依赖的第三方库 混淆规则-BEGIN###########################

## support:appcompat-v7
-keep public class android.support.v7.widget.** { *; }
-keep public class android.support.v7.internal.widget.** { *; }
-keep public class android.support.v7.internal.view.menu.** { *; }

-keep public class * extends android.support.v4.view.ActionProvider {
    public <init>(android.content.Context);
}
##########################云OCR依赖的第三方库 混淆规则-END##############################

您可以根据您现有的混淆规则,将缺少的第三库混淆规则拷贝到您的混淆文件中。