请问我做了一款单机游戏,如果想发布到各大渠道sdk是什么意思需要接入渠道sdk是什么意思的SDK吗?我的是广告收费,没有服务器的

U8SDK创始人小黑――让手游SDK接入更简单
&&&&来源:&&&&
原标题:U8SDK创始人小黑――让手游SDK接入更简单
  对于当前手游行业,最苦逼的莫过于大大小小的游戏开发商了。这个行业的开发者们几乎没有不加班的。作为BOSS,其实也很无奈,因 为整个行业就是这样,大家都在赶时间。一款游戏,往往需要经过多轮封测到内侧到公测的层层洗礼,才能最终稳定下来。但是,就是在这个过程中,淘汰了无数没 有经受住考验的游戏。所以,为了能够快速地让游戏上线,验证游戏的可玩性,玩家体验,数值合理性等,游戏开发者们也真是拼了老命。
  说 到游戏上线,却让很多游戏开发商们措手不及。在国内,有太多大大小小的渠道,几乎所有的用户资源都掌握在他们手中。所以,辛辛苦苦搭框架,堆功能,测体 验,OK,准备上线的时候,发现,还有将近几十家甚至几百家的渠道SDK要接入,顿时坠入无底深渊。而且,现在国内手游开发,一般都是基 Unity3D,Cocos2D-x等游戏引擎,游戏引擎本身就是支持跨平台的,所以对于游戏逻辑开发来说,一次开发完成,就可以立马打出针对 Android和IOS,甚至WP的包。
  但是,对于SDK接入来说,就不是这么简单了。Android平台的渠道有上百 家,IOS又分为越狱和AppStore,AppStore无外乎就一个,但是国内越狱的渠道现在也越来越多了,目前估计有几十家。Android平台的 必须用Java接入,IOS平台的必须用Objective-C或者Swift来接入,多个渠道SDK怎么接,每家都不太一样,一家家去接入,那不是比游 戏开发的时间还要长?而且,每家渠道SDK动不动就升级,他们升级了,你还得跟着升级。
  所以,这个时候,你是不是蒙了?光听到这个数字,就已经让人有点瑟瑟发抖了,更别说一家一家去接入了。但是又没有办法,BOSS催的紧,游戏又想快速上线,好不容易觉得可以喘口气了,却又面临着无数个加班夜,这不是逼着人猝死吗?
  这就是我之前做手游开发时的真实写照,当我第一次面临如此多的渠道SDK时,我的第一想法就是逃避。后来想想,逃避总不是办法,既然事实已经摆在眼前,那么就要想办法去解决。所以,就诞生了U8SDK。
  U8SDK 就是为了解决这些问题,让游戏开发商,专注于游戏逻辑的研发,而不用关心渠道SDK的接入。对于游戏开发商,只需要花半天到一天接入U8SDK框架即可完 成多家渠道SDK的接入,大大节省了游戏开发商的研发时间,使得游戏能够快速上线。下面,就给大家简单介绍下U8SDK。
  1、技术开源,让你没有黑色壁垒
  作为游戏开发商,如果使用一个现成的工具,可能多多少少会有点担心和犹豫。因为公司的业务在变动,工具能否一直完美地支持公司的实际业务很难 得知。所以,基于此,U8SDK秉承技术开源的思想,分享一切U8SDK的核心实现原理,通过免费的视频教程以及完善的技术博客,让你知其然知其所以然。
  同时,U8SDK的使用者,拥有U8SDK的所有源码,想怎么改就怎么改,很容易和公司自己的业务整合在一起,最终形成手游开发商自己的一套统一SDK接入框架。所以说,U8SDK提供的是一整套技术解决方案,而不仅仅只是一个工具。
  2、安全性如何
  很多同类产品,要求手游开发商的游戏服务器和他们的服务器进行对接。也就是说,游戏所有的用户数据和支付数据,都走他们的服务器。这样无外乎增大了数据安全风险,所以,这个也成了很多手游开发商最关心的问题。
  但是上面我们已经说过,U8SDK提供的是一整套技术解决方案,所有技术细节都是开源的,使用者拥有全套源码,服务器端也是由游戏开发商自己架设,所有用户数据和支付数据,都走CP自己的服务器,而不会通过我们的服务器进行中转。所以,不存在任何数据安全性的问题。
  3、渠道SDK的支持性如何
  目前U8SDK支持40+主流渠道,后续还会持续不断地增加。而且,通过U8SDK统一SDK框架来接入一个新渠道,也很容易,就是个体力活,我们会根据用户的需求和反馈,及时完善和支持更多的渠道。
  U8SDK除了支持渠道SDK外,还支持接入其他和游戏相关的功能性SDK,比如统计类SDK,推送类SDK,分享类SDK,调试类SDK等等。
  之 前有童鞋问道,UC等渠道不支持第三方渠道SDK接入框架,很多童鞋之前使用U8SDK的同类产品,会审核不通过。那么,这里说明下,U8SDK不存在这 个问题,目前已有多款基于U8SDK的游戏在九游上线。因为作为U8SDK的使用者来说,U8SDK就是他们自己公司的产品,因为他们拥有所有源码,服务 器也由自己的公司架设,不存在任何安全风险。
  4、收费如何
  相比于同类产品,动不动几十万的年费,VIP等服务,U8SDK还是崇尚并坚持传递开源的精神。我们所有的技术实现细节都是开源的,我们通过 免费的视频教程和博客分享一切关于U8SDK的技术细节,所以,这也是U8SDK良好口碑的基础,也使得U8SDK聚集了一大批优秀的开发者。
  但是,工具类的产品,我们希望为用户提供持续不断的更新以及完善的技术支持。所以,我们仅仅通过一系列廉价的增值服务,来赚取一定的费用,用作U8SDK的推广和维护。
  最后,如果大家感兴趣,可以访问我们的官方网站和博客
(责编:杨虞波罗、沈光倩)
善意回帖,理性发言!
使用其他账号登录:
恭喜你,发表成功!
请牢记你的用户名:,密码:,立即进入修改密码。
s后自动返回
5s后自动返回
恭喜你,发表成功!
5s后自动返回
最新评论热门评论
游戏新闻|精彩博客
24小时排行&|&
人 民 网 版 权 所 有 ,未 经 书 面 授 权 禁 止 使 用
Copyright &
by .cn all rights reserved
人 民 网 版 权 所 有 ,未 经 书 面 授 权 禁 止 使 用
Copyright &
by .cn. all rights reservedPP新增支持游戏传入自定义扩展字段.
1.Google渠道
增加Google的支付和账号服务。
支付系统使用v3版本api。
2.百度更新
重要:新游戏及更新版本的游戏必须接入此版本,否则无法通过审核。
由v2.0.1版本更为v3.1.0版本,版本更新比较大,与贴吧、星玩家登录状态互通;支持91豆、酷币消费;
根据渠道后台支付调整,增加支付稳定性,提高支付成功率。
PP新增支持游戏传入自定义扩展字段.
1.Google渠道
增加Google的支付和账号服务。
支付系统使用v3版本api。
2.百度更新
重要:新游戏及更新版本的游戏必须接入此版本,否则无法通过审核。
由v2.0.1版本更为v3.1.0版本,版本更新比较大,与贴吧、星玩家登录状态互通;支持91豆、酷币消费;
根据渠道后台支付调整,增加支付稳定性,提高支付成功率。
本周新增渠道:
有信、起点、淘宝、搜狗
本周渠道SDK版本升级:
联想、移动
下周新增渠道:
酷派、搜狐、益玩、万普世纪
手游通是蓝港旗下的子公司,主攻的项目是OKSDK。OKSDK是蓝港互动内部制定的一套接口规范,能够使游戏快速对接国内外数十家渠道平台。蓝港互动CEO王峰在今年的Chinajoy上提出&好游戏100计划&,OKSDK也是该计划重要的组成部分。本次活动,手游通副总裁 刘佳城作了《分发神器OKSDK的运用经验分享》主题演讲。
手游通是蓝港旗下的子公司,主攻的项目是OKSDK。OKSDK是蓝港互动内部制定的一套接口规范,能够使游戏快速对接国内外数十家渠道平台。蓝港互动CEO王峰在今年的Chinajoy上提出&好游戏100计划&,OKSDK也是该计划重要的组成部分。本次活动,手游通副总裁 刘佳城作了《分发神器OKSDK的运用经验分享》主题演讲。
刘佳城演讲中表示:&OKSDK解决了对接渠道工作量大、时间紧、成本高、人员数量多等问题。而且OKSDK免费使用,CP第一次接入十分简单。它屏蔽了各渠道SDK的差异化,并且有专门的技术人员定期会跟踪维护。&目前。蓝港互动所有的手机游戏都在使用OKSDK。以最新一款接入的产品为例,2个人只花了13天,便接入上线了51家渠道。
在谈到OKSDK的优势时,刘佳城坦言:&OKSDK有专门的服务器集群,通过云服务器打包,速度非常快,而且CPU占有率很低,数据安全稳定性高。&同时,OKSDK提供了专业数据分析工具和游戏数据模型。
据刘佳城透露,OKSDK已经接入国内50多家安卓渠道,不包括CPS渠道;iOS越狱渠道有10家以上,基本覆盖所有国内越狱渠道。同时,随着蓝港互动国际业务的拓展,OKSDK也已经覆盖了海外20多家安卓和iOS渠道。
最后,刘佳城表示:&蓝港互动定位全球渠道推广,OKSDK是一套完全免费的服务体系。希望通过这套体系能吸引更多的国内开发商,将更好的手游产品推向玩家与市场。&详细内容请看演讲实录。
以下是大会演讲实录:
刘佳城:大家好,我是手游通的刘佳城。或许大家对&手游通&这个名字比较陌生,其实我们做了很长时间。手游通是蓝港旗下的一家子公司,负责发行业务的技术支持。
下面我跟大家分享一下我们的分发神器OKSDK。在手游发行中,需要接入各个渠道的SDK,这些SDK存在很多差异,OKSDK可以屏蔽这些差异,OKSDK是什么?其实它是一套手游sdk自动打包系统。
接SDK如与时间赛跑 看不见终点
先讲一下OKSDK的起源,它来源于《王者之剑》。2012年9月中旬,《王者之剑》第一次封测时,数据表现不错,2013年开始接入渠道,当时首发渠道5家,因为当时渠道数量不是很多。在2013年1月份的时候,当时我在想,如果要是按这样的接法,我们蓝港第二剑《苍穹之剑》也要走这一套流程。
因为当时想到渠道没那么多,顶多十几家,无所谓了,但是因为这个无所谓,酿成了很多悲剧。2013年,《王者之剑》市场变化超过所有人的预期,它成了一款格斗游戏的标杆产品。随之而来的是大量渠道的增加。2013年渠道增加数量非常多,以至于我们每天只做一件事,就是对接。
我们把所有的时间、精力和人力全放到这上面了,但还是赶不上对接速度。商务不断的找我们说,又有很多国内的渠道需要对接,而且,蓝港海外业务也在发展,海外的渠道也在大量增加。当时我的感觉真的就像这个人一样,每天在跟时间赛跑,但是永远看不到终点,然后我对程序员们说,大家不能再这么干了,否则都会被累死的。
于是我们开始制定一套蓝港内部的接入规范,并做出了OKSDK。这些痛苦的经历也促使了我们完善这套系统。后来,OKSDK成功应用到《苍穹之剑》、《神之刃》,效果还是不错的,后面会跟大家分享一下数据。我们在实践中不断摸索,期间经历了几次改版,最终OKSDK走向了成熟。
OKSDK解决:工作量、时间、成本、人员数量等问题
那OKSDK给我们解决了什么问题呢?
第一点,工作量。以前接SDK差不多都要干到后半夜,因为渠道催的太紧。有些渠道签完合同,根本就没跟我们商量开发周期,只说合同要到期了,否则就要赔钱。我们没有办法,只能在公司旁边旅馆开个房间,困了就去睡,睡醒了就继续干,长时间处于这种状态。现在把这套接入规范制定完之后,工作量减少的非常明显。
第二点,时间。游戏接渠道的时间特别紧。现在都是几个渠道一起做首发,通过OKSDK时间紧的问题也解决了,只要蓝港接入过的渠道,后面的游戏都可以通用,只要配置几个参数就可以轻松搞定。
第三点,成本。接SDK是一件很耗成本的事情,时间成本、人力成本等等还是蛮高的。OKSDK的使用很大程度上节省了这些成本。
第四点,人员数量。使用OKSDK后,人员数量也下降很多。原来我用了五个非常优秀的程序员,工作经验都在五年以上,现在,只用2个工作在2年左右的程序就对接一切渠道了
其实SDK对接的技术含量并不是特别高,因为各个渠道把SDK都封装好了,只要按照他们的接口规范,实现就可以了。成本高的不是技术,是沟通成本。有时候跟渠道技术联系时,可能一个小时才能会有结果,因为各个渠道也在服务很多研发商,这样就不可能每个都照顾到,所以沟通成本是非常高的。
第五点,很单调。因为除了对接,还是对接,工作特别的单调枯燥。这套接口规范制定出来以后,给我们蓝港解决了很大一个难题。
屏蔽SDK差异化 定期维护
所有手游开发者都会经历渠道对接,都会遇到我刚才说的那些问题,所以我们把自己开发的统一接口共享出来,希望能够帮助CP,让接入渠道SDK变得轻松,减少研发团队成本,提高接入效率。
这张PPT只是展示了其中的一部分渠道,其实国内的主流渠道基本上接全了,海外我们也接了不少渠道。
OKSDK屏蔽各渠道SDK升级的问题,渠道SDK对接第一次很容易,但是各个渠道SDK都是不定期更新的,每一次更新都会再接入一次,因为在提审的时候,如果你不用最新的版本,渠道是会拒审的。OKSDK解决了这个问题,我们做到了所有的版本只需接入一次,后面所有东西都有专人维护。
打包更快 提供专业数据分析工具
云端打包是OKSDK最强大的能力之一。举个例子,假设我要打游戏客户端的包,一个渠道需要1分钟,如果有20个渠道,我打包的时间就是20分钟。通过OKSDK的云服务,20台机器,每个机器打一个包,只是需要一分钟,20个包就已经打包好了。
在游戏客户端打包的时候,占用率最高的并不是CPU,也不是内存,而是硬盘。它对硬盘消耗非常大,而且硬盘读写速度决定了打包速度。当时我做了测试,普通的服务器硬盘打包一分钟,固态硬盘不到12秒就打包好了。当时测试的客户端大小大概在75-80MB,这样的水平,所以打包会更快。
我们有一个很强大的分析工具,就像冯海利所讲的,蓝港游戏所有数据都是我们提供的,很多数据模型也基于这套接口。大家可以去了解下这些数据模型,这是我们花7年时间摸索出来的。
打通国内主流渠道 立足全球渠道推广
这是国内渠道,安卓渠道超过50家,不包括CPS渠道。这50多家是有SDK的渠道数量,iOS越狱渠道有10家以上,基本上国内的iOS越狱渠道全被覆盖了。
海外渠道这一块,安卓和iOS渠道总共20多家。我们本身海外有韩国分公司、台湾分公司,东南亚以前一直在做,包括北美,巴西、俄罗斯都有涉及,所以海外渠道的数量在不断地增加。我们的目标,是做全球化的渠道推广。
我们提供的接口有Andriod、iOS和unity,陆续还会增加。这块我着重说一下unity,因为蓝港的游戏大多是用unity做的,我们做了一个类似于unity插件的工具,只要接入一次,就可以打包成iOS和Andriod双端,但是iOS打包跟Andriod的有点不一样,这个可以私下具体沟通。从代码层面来讲,是不用修改的。
正在使用OKSDK的一些游戏,大家看一下,有《王者之剑》、《苍穹之剑》、《神之刃》、《萌将冲冲冲》、《英雄之剑》和《步步封神》,正在接入的有《VR特警》、《甄嬛传》、《齐天大圣》等。
2人13天接入上线51家渠道
这是一个真实数据的对比,《王者之剑》当时上了56个渠道,用了137天, 投入5个人,而且是五个非常优秀的人。在《苍穹之剑》上我们调整了,数量有所改变,渠道接入51家,用时65个工作日,人数2个人,一个负责iOS渠道,一个负责Android渠道,但是工作量还是很大。
我们最新接入的一款游戏,游戏名不方便说,接入渠道51家,2个人用时13个工作日,就把这些事情搞定了。之前我在微信圈上看到一家公司说是三个小时之内接入全渠道,我觉得这个不太现实,如果单纯打包的话,OKSDK打100个渠道的包需要20分钟左右,是不是20分钟就可以全接入呢?这是不可能的,因为手机每天都有新机型出现,安卓版本也不一样,而且很多人也在修改安卓系统的很多东西,适配其实是一个很大的问题。可能游戏在A手机上没问题,到B手机上就不行了,这是很正常的事情,所以调试部分会浪费很多时间,并不代表打完包就一定可以上。我们适配做了很多,因为蓝港有很多很多游戏,而且中低端、高端都在做适配。我们部门有200多款手机,就是做适配用的,测试游戏能不能运行。
OKSDK数据安全、稳定
关于数据安全问题,其实这个我也不用藏着掖着,这是一个很正常的问题,因为有些人觉得接入OKSDK有问题,他们认为接入蓝港的SDK以后,蓝港可以看到他们的数据,很多CP不想让你知道。
这个问题很好解决,各个渠道后台,都有一个充值回调地址,只要大家配成自己的就好了。登陆这方面,OKSDK返回的渠道参数都要传给客户端,客户端拿到的一些参数、如uid等可以发到自己游戏服务器,游戏服务器去渠道认证就好了,这样就跳过了我们服务器提供的那一套接口。我们不会知道任何数据,这样的话对于cp来说是数据安全的,我没有数据,只是提供一个打包的工具,但是后续一些蓝港业务模型,可能就使用不了了,因为我也没有数据,也分析不了什么。
如果接入这套服务器接口的话,我们有一套开发者协议,协议里面明确规定,我们不会泄露任何数据。如果大家有需要,我可以跟大家签纸质协议,这个也没有问题。
OKSDK优势:永久免费、服务器集群
目前市面上做OKSDK接入方案的有很多家,我知道的就有五六家,甚至更多,我们跟他们有什么区别,或者有什么优势?这个可能大家很关心。
1、OKSDK是免费的。我们这个项目是一个纯福利项目,我们是永久免费的,而其他一些公司做的话,可能需要接入很多东西,让你提供很多数据,为什么?它后续会提供一些分析工具就像我们这套模型,然后用这个分析工具去收取服务费,否则如果他们长期免费下去,他们的资金链会断裂,如果大家选择这样的接入方案,假如说它有一天资金链断了的话,不能说游戏是灭顶之灾,至少是重大影响。
2、第二,服务器集群。刚才冯海利提到我们有自建机房,为什么会自建机房呢?假如服务器出了一些问题,如果直接找我的话,我一个电话就可以解决,内部处理很快的。其他SDK接入方案,有很多都是购买的云服务,如果服务器出了问题,他们解决不了,要去找云提供商,这种沟通其实还是有一定的效率问题的。
游戏一般峰值出现在晚上,我们有专业的运维团队,他们是24小时值班的,直接管理所有的机房。不光是负责OKSDK这个项目,蓝港所有的游戏项目都会管。
我们的服务器体系是比较强大的,毕竟我们经历了端游、页游、手游,发展了7年,一直在摸索这些东西,所以稳定性是没有问题的。我记得我当时来蓝港的时候,那时没有账号系统、充值系统,当时在一个特别小民宅里,就一直在研究。从我来了到现在,我们这套体系,没有出现过因为宕机,而影响充值和登录的事件。
《神之刃》、《王者之剑》、《苍穹之剑》这三款都是用我们这个平台,DAU都是百万级别的,蓝港的端游、页游也是用的这一套系统,我们服务器基本上没有什么压力,我可以自信的说,一般的厂商的体系没有我们这一套完善。
这一套系统最早是一套私密系统,这次把他公开,目的在于游戏代理。希望通过这套系统跟开发商进行合作,即使第一款游戏没有合作成功,我们相信后面肯定会有成功的合作,OKSDK这也是王总chinajoy提出好游戏100计划当中一个重要的组成部分。
目前,OKSDK 研发、服务团队人员已经超过50人。如果有朋友想跟我们合作的,可以联系我们的商务王慧凌。电话: QQ :& 或()邮箱:
现已支持 [ 91、PP、快用、同步推、itools、海马、爱思、我爱游戏、xy游戏助手 ]请登录,添加完渠道之后,即可下载
文件大小:
文件大小:491kb
文件大小:289kb
手游通(北京)科技有限公司 京ICP备号-1手游渠道SDK接入这个工作怎么样?iOS方面的_百度知道
手游渠道SDK接入这个工作怎么样?iOS方面的
昨天面试一家公司是做手游的我是做iOS应用开发的,问下这个以后发展怎么样,他们招iOS开发工程师专门做平台渠道接入?或者对应用开发有帮助没
如我们之前所说.onActivityResult(requestCode。大家可以看到,360。它不用考虑后面怎么打包,sid)访问U8 Server获取一个接下来登陆认证使用的一个token.this,对于我们这个“游戏”来说;
1&quot.sdk.getInstance()。对于TA.setOnClickListener(new View,Cocos2D等游戏引擎;
import com.init(MainActivity.onPause(),需要接入UC.IU8SDKL
}),接入是一件很简便的事,当乐.makeText(MainA登录成功.onPause(),成功或者失败时.getInstance().onPause(),而每个渠道SDK的接入:&quot,初始化就完毕了;
super.login().runOnMainThread(new Runnable() {
public void run() {
U8User, Toast,可以做一个Toast输出.sdk,而只是调用U8 SDK抽象层.getInstance().Intent,我们用eclipse新建一个android工程;
public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.LoginR
在需要调用支付界面的地方调用;
同时,加上U8 SDK对应方法的调用:[java] view plaincopy
U8SDK.OnClickListener() {
public void onClick(View v) {
pay().u8.activity_main),面临上线.onDestroy().getInstance().onStop().getInstance().init(MainA
public void onNewIntent(Intent newIntent){
@SuppressLint(&quot.getInstance(),就是在onCreate里面进行初始化操作:[java] view plaincopypublic void onPause(){
U8SDK,怎么生成渠道包,而是采用像Unity3D;
public void onStop(){
U8SDK,在对应的方法里面.
public void onResult(int arg0.getInstance().onBackPressed().makeText(MainActivity。因为采用U8 SDK统一接入框架的思想,我们需要重写Activity相关的系统事件方法:&quot,我们就来看看如何调用。我们新建一个主运行的A
U8SDK.demo.getInstance();
public void onLoginResult(LoginResult loginResult) {
Toast.getSid()。这里需要说一下, resultCode.LENGTH_SHORT).components.Activity.getInstance();
}).getInstance().setServerId(&
public void onDestroy(){
public void onResume(){
import android,就是该抽象层的一个实现而已;
super, Intent data){
U8SDK;1&quot,作为我们这个模拟的游戏工程,所以;
super。那么, String msg) {
private void pay(){
U8SDK。,怎么管理配置.B
private void login(){
U8SDK.onActivityResult(requestC
btnLogin,我们需要使用U8SDK.pay(params).os,sid.content, int resultCode.onPause(),sid.runOnMainThread().T
}).setRoleId(&
super.getInstance().runOnMainThread(new Runnable() {
public void run() {
PayParams params = new PayParams();
super.makeText(MainActivity.sdk,根据上一篇文章谈到的抽象层, resultCode.login().OnClickListener() {
public void onClick(View v) {
login().onRestart(),这些接口需要在UI 线程中调用.getInstance();
public void onActivityResult(int requestCode对于每个游戏。只是多了一层JNI调用,91, String msg) {
Toast.u8.runOnMainThread(new Runnable() {
public void run() {
U8User,当具体SDK有状态变更,小米等渠道,我们可以得到具体的信息,如果你不是直接使用Android开发的游戏.LENGTH_SHORT).
其中.getInstance().u8;
).onDestroy();+loginResult.onNewIntent(newIntent).components。最后通过一键打包工具来完成最后的产出.sdk.getInstance();
Button btnLogin = (Button)findViewById(R:[java] view plaincopy
ShowToast&quot。然后,;
super, data), &quot.getInstance()。首先.LENGTH_SHORT).annotation.onResume();
import com.SuppressL
}).onBackPressed().LENGTH_SHORT).onNewIntent(newIntent);
btn,其接入也是一样的;
需要注意的是;
U8SDK.id.setSDKListener(new IU8SDKListener() {
@SuppressLint(&quot,
public void onBackPressed(){
U8SDK?或者你有更多编程开发上的其他问题你来我们群里说吧 这里是开发者互相学习交流的有大神 让他们给你解释你的疑问
q un号.PayParams,就算完成了SDK的接入了.onResume();
Button btn = (Button)findViewById(R.u8;
public void onPause(){
U8SDK。那么。.
import com。比如;ShowToast&quot, Toast.this。onLoginResult则是渠道SDK登陆成功时的回调,在我们这个模拟的游戏中.makeText(MainA).setOnClickListener(new V
),游戏工程本身不耦合具体的每个渠道SDK.widget.View.
import com:[java] view plaincopyU8SDK,怎么升级.u8.U8SDK.widget,我们是基于监听器模式的设计.U8P
U8Pay.onCreate(savedInstanceState);
import android,我们先来看看.u8。在这里就是需要去做我们之前整个登陆流程里的第四步(u8appid, data);
import com。这样.onRestart().B
public void onResult(int arg0.view.sdk.pay(params).getInstance();ShowToast&ShowToast&quot.U8User.layout,游戏怎么来调用这个抽象层.getInstance():[html] view plaincopyU8User.onStop(), msg, &quot:[html] view plaincopyU8Pay.u8.login().button2),对于游戏来说.this.this),需要接入SDK.setPrice(100).setSDKListener(new IU8SDKListener() {
@SuppressLint(&quot。我们假设我们已经开发了一款游戏, Toast.button1),只需要接入抽象层,到这里就结束了;
setContentView(R;
这样.getInstance().this);
大家可以看到.getInstance().getInstance().getInstance().getInstance()。要是还不能解决,就是在需要调用登陆界面的地方,我们需要设置一个监听,onResult在调试的时候.getSid();
}),调用;登录成功;
public void onLoginResult(LoginResult loginResult) {
@SuppressLint(&
super,接入SDK抽象层是一件多么Easy的事情;
public void onRestart(){
U8SDK;+loginResult:[java] view plaincopypackage com.sdk
其他类似问题
为您推荐:
手游的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁3100人阅读
小黑终于有了自己的家:,欢迎来坐坐。
题记:很多做游戏开发的人,估计都或多或少地接过渠道SDK,什么UC,当乐,91,小米,360......据统计国内市场当前不下于100家渠道,还包括一些没有SDK的小渠道。每个渠道SDK接入的方法呢,多是大同小异。但是,正是这些小异,又让SDK的接入,产生了无穷无尽的变数。所以,接入SDK之前,如果你没有经验,或者没有被SDK坑过,那么当你看到这系列文章的时候,你很幸运,你可以避免这一切了。如果你之前被坑过,而且还在继续被坑着,那么现在,就是你解脱的时刻。
文章我们说了整个U8 SDK抽象成的设计,那这篇文章,我们就来验证一下,他是否如我们期待的那样,简单灵活。
正如之前所说,对于每个游戏,只需要接入抽象层,而每个渠道SDK的接入,就是该抽象层的一个实现而已。最后通过一键打包工具来完成最后的产出。那么,我们先来看看,游戏怎么来调用这个抽象层。
我们假设我们已经开发了一款游戏,面临上线,需要接入SDK,需要接入UC,当乐,91,360,小米等渠道。因为采用U8 SDK统一接入框架的思想,游戏工程本身不耦合具体的每个渠道SDK,而只是调用U8 SDK抽象层。那么,根据文章谈到的抽象层,我们就来看看如何调用。
首先,我们用eclipse新建一个android工程,作为我们这个模拟的游戏工程。这里需要说一下,如果你不是直接使用Android开发的游戏,而是采用像Unity3D,Cocos2D等游戏引擎,其接入也是一样的。只是多了一层JNI调用。我们新建一个主运行的Activity:
package com.u8.sdk.
import com.u8.sdk.IU8SDKL
import com.u8.sdk.LoginR
import com.u8.sdk.PayP
import com.u8.sdk.U8SDK;
import com.ponents.U8P
import com.ponents.U8U
import android.os.B
import android.view.V
import android.widget.B
import android.widget.T
import android.annotation.SuppressL
import android.app.A
import android.content.I
public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
U8SDK.getInstance().setSDKListener(new IU8SDKListener() {
@SuppressLint(&ShowToast&)
public void onResult(int arg0, String msg) {
Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT);
@SuppressLint(&ShowToast&)
public void onLoginResult(LoginResult loginResult) {
Toast.makeText(MainActivity.this, &登录成功,sid:&+loginResult.getSid(), Toast.LENGTH_SHORT);
Button btn = (Button)findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Button btnLogin = (Button)findViewById(R.id.button2);
btnLogin.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
U8SDK.getInstance().init(MainActivity.this);
private void login(){
U8SDK.getInstance().runOnMainThread(new Runnable() {
public void run() {
U8User.getInstance().login();
private void pay(){
U8SDK.getInstance().runOnMainThread(new Runnable() {
public void run() {
PayParams params = new PayParams();
params.setPrice(100);
params.setServerId(&1&);
params.setRoleId(&1&);
U8Pay.getInstance().pay(params);
public void onActivityResult(int requestCode, int resultCode, Intent data){
U8SDK.getInstance().onActivityResult(requestCode, resultCode, data);
super.onActivityResult(requestCode, resultCode, data);
public void onPause(){
U8SDK.getInstance().onPause();
super.onPause();
public void onResume(){
U8SDK.getInstance().onResume();
super.onResume();
public void onNewIntent(Intent newIntent){
U8SDK.getInstance().onNewIntent(newIntent);
super.onNewIntent(newIntent);
public void onStop(){
U8SDK.getInstance().onStop();
super.onStop();
public void onDestroy(){
U8SDK.getInstance().onDestroy();
super.onDestroy();
public void onRestart(){
U8SDK.getInstance().onRestart();
super.onRestart();
public void onBackPressed(){
U8SDK.getInstance().onBackPressed();
super.onBackPressed();
大家可以看到,在我们这个模拟的游戏中,接入SDK抽象层是一件多么Easy的事情,就是在onCreate里面进行初始化操作:
U8SDK.getInstance().init(MainActivity.this);
同时,如我们之前所说,我们是基于监听器模式的设计,我们需要设置一个监听,当具体SDK有状态变更,成功或者失败时,我们可以得到具体的信息:
U8SDK.getInstance().setSDKListener(new IU8SDKListener() {
@SuppressLint(&ShowToast&)
public void onResult(int arg0, String msg) {
Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT);
@SuppressLint(&ShowToast&)
public void onLoginResult(LoginResult loginResult) {
Toast.makeText(MainActivity.this, &登录成功,sid:&+loginResult.getSid(), Toast.LENGTH_SHORT);
其中,onResult在调试的时候,可以做一个Toast输出。onLoginResult则是渠道SDK登陆成功时的回调。在这里就是需要去做我们之前整个登陆流程里的第四步(u8appid,sid)访问U8 Server获取一个接下来登陆认证使用的一个token。
这样,初始化就完毕了。然后,就是在需要调用登陆界面的地方,调用:
U8User.getInstance().login();
在需要调用支付界面的地方调用:
U8Pay.getInstance().pay(params);
需要注意的是,这些接口需要在UI 线程中调用,所以,我们需要使用U8SDK.getInstance().runOnMainThread():
U8SDK.getInstance().runOnMainThread(new Runnable() {
public void run() {
U8User.getInstance().login();
最后,我们需要重写Activity相关的系统事件方法,在对应的方法里面,加上U8 SDK对应方法的调用。比如:
public void onPause(){
U8SDK.getInstance().onPause();
super.onPause();
这样,对于我们这个“游戏”来说,就算完成了SDK的接入了。大家可以看到,对于游戏来说,接入是一件很简便的事。它不用考虑后面怎么打包,怎么生成渠道包,怎么管理配置,怎么升级,。。。对于TA,到这里就结束了。接下来,我们就要看看,对于一个渠道来说,比如UC,我们怎么来接入到这套框架中来呢?
本文作者:小黑
版权声明:本文为博主原创文章,未经博主允许不得转载。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:497887次
积分:5927
积分:5927
排名:第1873名
原创:87篇
转载:22篇
评论:424条

我要回帖

更多关于 360sdk 单机 的文章

 

随机推荐