app SDK接入参考

1.0 引入模块

    xxximplementation WB.fixVersions('Proxy:APP')

1.1 初始化(application中调用)

    AppCore.init(application);

1.2 生命周期接口(activity中对应生命周期调用)

AppCore.onPause();

AppCore.onResume();

1.3 设置服务器数据获取成功的回调

AppCore.setCfgLoadCallBack(CfgLoadedCallBack);

CfgLoadedCallBack

void onResult(int type)

参数:

  • type: //AppCore.CTYPE_MM //AppCore.CTYPE_AD //AppCore.CTYPE_XYX //AppCore.CTYPE_GAME //AppCore.CTYPE_SPLASH

    回调返回成功后调用获取接口才能取到数据

示例:

AppCore.getInstance().setCfgLoadCallBack(new AppCore.CfgLoadedCallBack() {
    @Override
    public void onResult(int type) {
        if(type == AppCore.CTYPE_AD)
        {
            ADConfig adcfg =  AppCore.getInstance().getAdConfig();
            if(adcfg !=null)
            {
                Log.d(TAG, "  adcfg  = "+ adcfg.getSourceList().toString());
            }
        }
        else if(type == AppCore.CTYPE_XYX)
        {
            XYXConfig xyxCfg =  AppCore.getInstance().getXyxConfig();
            if(xyxCfg !=null)
            {
                Log.d(TAG, "  xyxCfg  = "+ xyxCfg.getItemList().toString());
            }
        }
    }
});

1.4 获取配置的常用接口

/**
     * 获取广告配置
     * 返回类型   ADConfig
     **/
AppCore.getInstance().getAdConfig();    
 /**
     * 获取 互推配置
     * 返回类型   XYXConfig
     **/
AppCore.getInstance().getXyxConfig();
/**
     * 获取 游戏配置
     **/
AppCore.getInstance().getGameConfig();

1.5 互推上报接口

/**
     * 展示上报    
     **/
AppCore.getInstance().getXyxConfig().exposureShow(XYXItem item);  
/**
     * 点击上报    
     **/
AppCore.getInstance().getXyxConfig().exposureClick(XYXItem item);

1.6 native常用接口

import com.temp.proxy.AppNative;

    //自定义事件,需初始化后调用
   AppNative.nativeOnEvent(String key);

 //自定义事件,需初始化后调用
    AppNative.nativeOnEventLabel(String key,String val);
   //自定义事件,需初始化后调用。map 中  key 和 value 都不能含有 '=' 和 ','
    AppNative.nativeOnEventMap(String key, HashMap<String,String> map)
    //账号登录  暂时不可用
     AppNative.nativeOnSignIn(String account,String acountType);
    // 账号登出  暂时不可用
    AppNative.nativeOnSignOut();
   //设置用户等级
     AppNative.nativeSetUserLevel(int lv);
    // 开始关卡
    AppNative.nativeStartLevel(String lv);
   //退出关卡 需和开始关卡成对出现
    AppNative.nativeExitLevel(String lv);
    //通过关卡 需和开始关卡成对出现
     AppNative.nativeFinishLevel(String level,String score);
   //关卡失败 需和开始关卡成对出现
     AppNative.nativeFailLevel(String level,String score);
    /**
     * 支付统计
     * money 人民币价格
     * coin  虚拟币
     * source  支付方式
     **/
    AppNative.nativePay(double money,int coin,int source);
     /**
     * 支付统计
     *  money 人民币价格
     *  item 道具名
     *  道具数量
     *  道具价格
     *  支付方式
     **/
    AppNative.nativePay2(double money,int coin,int source);
    //log 开关,默认为true
    AppNative.nativeSetLogEnabled(boolean enableLog);
    //获取 MM 协议返回数据 字符串
    AppNative.nativeGetMMChl();
    //获取广告配置  字符串
    AppNative.nativeGetADCfg();
    //获取互推配置 字符串
    AppNative.nativeGetXYXCfg();
    //获取游戏配置 字符串
    AppNative.nativeGetGameCfg();
    //从服务器获取游戏配置
    AppNative.nativeGetNetGameCfg(String ver);
    //更新 MM协议配置
    AppNative.nativeUpdateMMChl();
    //更新 广告配置
    AppNative.nativeUpdateADCfg();
    //更新 互推配置
    AppNative.nativeUpdateXYXCfg();

1.7 获取应用参数

channel 配置 name为 com.app.sdk.channel

项目id 配置 name为 com.app.sdk.prjid

appid 配置 name为 com.app.sdk.appid

appkey 配置 name为 com.app.sdk.appkey

import com.temp.proxy.AppUtils;

//获取应用名称
AppUtils.getAppName();
//获取包名
AppUtils.get_package_name();
//获取渠道名        配置 meta-data name 为 com.app.sdk.channel
AppUtils.getChannel();
//获取项目ID    配置 meta-data name 为 com.app.sdk.prjid
AppUtils.get_prjid();
//获取产品id    配置 meta-data name 为 com.app.sdk.appid
AppUtils.get_appid();
//获取产品appkey配置 meta-data name 为 com.app.sdk.appkey
AppUtils.get_appkey();
//获取app版本
AppUtils.get_app_ver();
//获取imei
AppUtils.get_imei();
//获取网络状态 (0-无网络 1-手机网络 2-wifi网络 3-以太网络 4-蓝牙网络)
AppUtils.get_net_state();

最后更新于