移动安全联盟OAID SDK 集成

Android 项目中集成OAID SDK步骤

1.把msa_mdid_x.x.x.jar,lib39285EFA.so拷贝到项目的libs目录下,并设置依赖,其中x.x.x代表版本号。(注意,要及时关注移动联盟更新文档,保持版本及时更新),最新aar版本可到下列链接下载

http://www.msa-alliance.cn/col.jsp?id=120

配置如下图所示:

移动安全联盟OAID SDK 集成

根据上图把相对应的代码黏贴到项目中去,不要黏贴错位了。

代码:

ndk {
    abiFilters "armeabi", "armeabi-v7a"
}
sourceSets {
    main {
        jniLibs.srcDirs = ['libs']
    }
}
输出指定的abi体系下的so库我只选择了:"armeabi", "armeabi-v7a",这个根据你们自己的需求添加,若添加其他体系在libs下也要记得添加so库。

2.将supplierconfig.json拷贝到项目assets目录下

移动安全联盟OAID SDK 集成

3.初始化sdk

图中的SystemOutClass和Spf是本项目的输出和保存oaid的工具类,可忽略。

idSupplier.getOAID()就是最终获取的参数

移动安全联盟OAID SDK 集成

代码:

/**
 * 获取oaid
 */
public void getOAID(){
    try {
        JLibrary.InitEntry(this);//初始化获取oaid的 sdk
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    MdidSdkHelper.InitSdk(BaseApplication.context(), true, new IIdentifierListener() {
        @Override
        public void OnSupport(boolean b, IdSupplier idSupplier) {
            if (idSupplier == null) {
                return;
            }
            SystemOutClass.syso("获取参数oaid....",idSupplier.isSupported());
            if (idSupplier.isSupported()){
                SystemOutClass.syso("获取参数idSupplier.getOAID()....",idSupplier.getOAID());
                Spf.putStringSpf(SpfKey.OAID,idSupplier.getOAID());
            }else{
                Spf.putStringSpf(SpfKey.OAID,"");
            }
        }
    });
}

getOAID在Application的onCreat方法中调用

移动安全联盟OAID SDK 集成

4.混淆

移动安全联盟OAID SDK 集成

代码:

-keep class com.bun.miitmdid.core.** {*;}