• 大小: 259KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-03-29
  • 语言: Java
  • 标签: oaid  android  

资源简介

获取android系统的oaid当前最新的msa_mdid_1.0.13,附带使用说明文档,亲测可用,请放心食用 1、把 miit_mdid_x.x.x.aar 拷贝到项的 libs 目录,并设置依赖,其中 x.x.x代表版本号。 2、将 supplierconfig.json中可以暂时不填写appid,后面也许会用到

资源截图

代码片段和文件信息

package ;

import android.content.Context;
import android.support.annotation.NonNull;
import android.util.Log;

import com.bun.miitmdid.core.ErrorCode;
import com.bun.miitmdid.core.MdidSdk;
import com.bun.miitmdid.core.MdidSdkHelper;
import com.bun.supplier.IIdentifierListener;
import com.bun.supplier.IdSupplier;

/**
 * Created by zheng on 2019/8/22.
 */

public class MiitHelper implements IIdentifierListener {

    private AppIdsUpdater _listener;
    public MiitHelper(AppIdsUpdater callback){
        _listener=callback;
    }


    public void getDeviceIds(Context cxt){
        long timeb=System.currentTimeMillis();
        int nres = CallFromReflect(cxt);
//        int nres=DirectCall(cxt);
        long timee=System.currentTimeMillis();
        long offset=timee-timeb;
        if(nres == ErrorCode.INIT_ERROR_DEVICE_NOSUPPORT){//不支持的设备

        }else if( nres == ErrorCode.INIT_ERROR_LOAD_CONFIGFILE){//加载配置文件出错

        }else if(nres == ErrorCode.INIT_ERROR_MANUFACTURER_NOSUPPORT){//不支持的设备厂商

        }else if(nres == ErrorCode.INIT_ERROR_RESULT_DELAY){//获取接口是异步的,结果会在回调中返回,回调执行的回调可能在工作线程

        }else if(nres == ErrorCode.INIT_HELPER_CALL_ERROR){//反射调用出错

        }
        Log.d(getClass().getSimpleName()“return value: “+String.valueOf(nres));

    }


    /*
    * 通过反射调用,解决android 9以后的类加载升级,导至找不到so中的方法
    *
    * */
    private int CallFromReflect(Context cxt){
        return MdidSdkHelper.InitSdk(cxttruethis);
    }

    /*
    * 直接java调用,如果这样调用,在android 9以前没有问题,在android 9以后会抛找不到so方法的异常
    * 解决办法是和JLibrary.InitEntry(cxt),分开调用,比如在A类中调用JLibrary.InitEntry(cxt),在B类中调用MdidSdk的方法
    * A和B不能存在直接和间接依赖关系,否则也会报错
    *
    * */
    private int DirectCall(Context cxt){
        MdidSdk sdk = new MdidSdk();
        return sdk.InitSdk(cxtthis);
    }
    @Override
    public void OnSupport(boolean isSupport IdSupplier _supplier) {
        if(_supplier==null) {
            return;
        }
        String oaid=_supplier.getOAID();
        String vaid=_supplier.getVAID();
        String aaid=_supplier.getAAID();
        StringBuilder builder=new StringBuilder();
        builder.append(“{support: “).append(isSupport?“true“:“false“).append(““);
        builder.append(“OAID: “).append(oaid.isEmpty() ? “\“\““ : oaid).append(““);
        builder.append(“VAID: “).append(vaid.isEmpty() ? “\“\““ : vaid).append(““);
        builder.append(“AAID: “).append(aaid.isEmpty() ? “\“\““ : aaid).append(“}“);
        String idstext=builder.toString();
        if(_listener!=null){
            _listener.OnIdsAvalid(idstext);
        }
    }
    public interface AppIdsUpdater{
        void OnIdsAvalid(@NonNull String ids);
    }

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2999  2020-06-09 14:07  msa_mdid_1.0.13\MiitHelper.java

     文件     287079  2020-03-30 15:54  msa_mdid_1.0.13\msa_mdid_1.0.13.aar

     文件        186  2020-06-09 13:46  msa_mdid_1.0.13\supplierconfig.json

     文件      33280  2020-06-09 14:03  msa_mdid_1.0.13\使用说明.doc

     目录          0  2020-06-09 14:07  msa_mdid_1.0.13

----------- ---------  ---------- -----  ----

               323544                    5


评论

共有 条评论