3.17 炫动渠道特殊处理


 @Override
protected void onCreate(Bundle savedInstanceState) {
   //......
   //先做特殊处理
if (MetadataUtil.getPlatform(this).equals(Constants.PLATFORM_XUANDONG)) {
    FrameLayout mainFrameLayout = new FrameLayout(this);
    RelativeLayout relativeLayout = (RelativeLayout) View.inflate(this, RNResourceUtil.getLayoutId(this, "activity_main"), null);
    FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT);
    mainFrameLayout.addView(relativeLayout, params);
    setContentView(mainFrameLayout);
    RNSDK.setContentView(this, mainFrameLayout);
} else {
    setContentView(RNResourceUtil.getLayoutId(this, "activity_main"));
}

//初始化SDK
if (MetadataUtil.getPlatform(this).equals(Constants.PLATFORM_XUANDONG)) {
     //做特殊处理
     RNSDK.initThirdSdk(this, savedInstanceState, new RNCallback() {
                @Override
                public void onCompleted(int code, String msg, Object data) {
                    //第三方SDK同意协议后再去初始化我们的SDK
                    if (RNCode.OK == code) {
                        Log.i("rn_sdk", "initThirdSdk onCompleted=> ");
                        RNSDK.initSdk
                        //研发初始化自己的SDK
                    }
                }
            });


}else{
    RNSDK.initSdk
    //研发初始化自己的SDK
}

//......
}

其中"activity_main"为主游戏布局文件名:R.layout.activity_main

一定要在炫动同意协议后的回调里面再去做处理

切换账号按钮显示逻辑如下,需要在登录游戏之前和登录游戏成功之后分别判断一次是否显示的逻辑,退出登录回到登录界面也要判断一次

if (MetadataUtil.getPlatform(this).equals(Constants.PLATFORM_XUANDONG)){
      if (RNSDK.isSupport(RNTypeConfig.FUNC_SHOW_SWITCH_ACCOUNT_BUTTON)){
           //展示切换账号按钮
          RNSDK.switchAccount(this);
      }else {
           //不展示
      }
}else {
  //非炫动渠道按正常流程

}

注销账号逻辑按上面一样:

RNSDK.cancelAccount(this);

退出按钮逻辑也按上面一样:

RNSDK.logout(this);

Last updated

Was this helpful?