本篇文章给大家谈谈sdk接口设计,以及sdk接口对接对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
今天给各位分享sdk接口设计的知识,其中也会对sdk接口对接进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
SDK设计心得之架构、资源、接口设计和其他
三个工程相互引用,如下:
此时的目录结构下,最终交付给游戏的内容将会包括:一个包含了SDK的Framework以及bundle资源文件和一个Demo工程。
就简单介绍下。其实SDK的架构都差不多,类似于系统架构。一般:
大体上可以分为三层。API层、Framework层、Module层。
所有的资源都放在bundle资源文件中,包含引用的第三方广告SDK,图片资源等
这样做最主要的目的就是尽可能的减少SDK对应用本身的影响。
这里就说下目前个人比较常用的一个可能有耗时操作的函数的处理流程吧。
不管是模块的开关还是接口的权限,都应该可以后台控制。当然前台最好也要有配置文件,可以减少一些无用的请求。而且在后台不能控制的时候,前台的开关还是很有必要的。
在同时有前后台的开关或者配置的时候,优先使用后台的配置。
借鉴: SDK设计心得之架构和资源
SDK 接口是什么意思
是指同一计算机不同功能层之间的通信规则称为接口。
java接口作用:
1、利于代码的规范。这样做的目的一方面是为了给开发人员一个清晰的指示,告诉他们哪些业务需要实现;同时也能防止由于开发人员随意命名而导致的命名不清晰和代码混乱,影响开发效率。
2、有利于对代码进行维护。可以一开始定义一个接口,把功能菜单放在接口里,然后定义类时实现这个接口,以后要换的话只不过是引用另一个类而已,这样就达到维护、拓展的方便性。
3、保证代码的安全和严密。一个好的程序一定符合高内聚低耦合的特征,能够让系统的功能较好地实现,而不涉及任何具体的实现细节。这样就比较安全、严密一些,这一思想一般在软件开发中较为常见。
android 游戏sdk设计
背景:
目前游戏存在对于接入的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);
关于sdk接口设计和sdk接口对接的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
sdk接口设计的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于sdk接口对接、sdk接口设计的信息别忘了在本站进行查找喔。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~