android 游戏sdk设计

2018-12-29  本文已影响0人  稻草人_a032

背景:

目前游戏存在对于接入的sdk存在两种形式,单Activity和多Activity模式

单Activity:游戏只有一个Activity,作为游戏的主入口

多Activity:游戏存在多个Activity,界面层级不固定

对于单Activiy不会存在太多问题,但是多Activity问题相对会比较多,比如我们sdk有浮窗,可以在这种情况下会被游戏的界面遮挡。

对于游戏有个共同的问题,就是选择在什么时候选择用View还是Activity,如果选择不好的话,当弹出sdk界面的时候,会阻碍游戏的进程,以至于游戏运行卡顿、花屏,甚至崩溃

设计:

1、api总揽

XQSDK.getInstance().init(this);//初始化接口

//生命周期处理

XQSDK.getInstance().onCreate();

XQSDK.getInstance().onResume();

XQSDK.getInstance().onRestart();

XQSDK.getInstance().onStart();

XQSDK.getInstance().onPause();

XQSDK.getInstance().onStop();

XQSDK.getInstance().onDestroy();

XQSDK.getInstance().onActivityResult(requestCode, resultCode, data);

XQSDK.getInstance().onConfigurationChanged(newConfig);

XQSDK.getInstance().onNewIntent(intent);

XQSDK.getInstance().onBackPressed();

//设置监听事件

XQSDK.getInstance().setSDKListener(new IXQSDKListener() {

    @Override

    public void onResult(Response res) {

   }

    @Override

    public void onPayResult(Response res) {

    }

    @Override

    public void onLogout(Response res) {

    }

    @Override

    public void onLoginResult(LoginResult logRes) {

    }

    @Override

    public void onExit(Response arg0) {

    }

}

XQUser.getInstance().login();//登陆

//支付

PayParams params =new PayParams();

params.setRoleId("rid_001");            //角色编号

params.setRoleName("花无缺");          //角色名称

params.setRoleLevel("99");            //角色等级

params.setServerId("sid_001");          //区服编号

params.setServerName("江湖一区");          //区服名称

params.setProductId("pid_101");            //商品编号

params.setProductName("飞羽扇");          //商品名称

params.setProductDesc("花无缺专属武器");    //商品描述

params.setPrice("1");                //充值金额(整型)

params.setOrderID("cp_orderId_001");      //CP订单号

params.setAttach("扩展参数");              //扩展字段

XQPay.getInstance().pay(params);

XQUser.getInstance().logout();//注销

XQUser.getInstance().exit();//推出游戏

//数据统计

UserExtraData userData =new UserExtraData();

userData.setDataType(1);        //数据统计类型 1:登录 2:注册 3:登出 4:创建角色 5:角色升级

userData.setRoleID("rid_001");    //角色编号

userData.setRoleName("花无缺");      //角色名称

userData.setRoleLevel("99");      //角色等级

userData.setServerID("sid_001");  //区服编号

userData.setServerName("江湖一区");    //区服名称

userData.setMoneyNum(9099);          //玩家剩余金币

userData.setUid("hwq2355617592");  //玩家编号

userData.setAttach("0");        //扩展字段

XQData.getInstance().submitUserData(userData);

上一篇 下一篇

猜你喜欢

热点阅读