U8SDK——接入其他插件(腾讯Bugly示例)

作者: 分类: U8SDK 发布时间: 2015-08-07 08:54 64条评论

从U8SDK的设计之初,我们就已经考虑到了,其实作为一款统一的SDK接入框架,我们要接入的不仅仅是渠道SDK,还有很多和游戏功能相关的一些其他SDK,比如统计类SDK,广告SDK,分享SDK,推送SDK,调试SDK等。
 
所以,基于U8SDK去接入这些功能性SDK是轻而易举的事情。下面我们就来以接入腾讯Bugly调试插件为例子,看看在U8SDK怎么接入功能性SDK。通过腾讯Bugly我们可以收集游戏的崩溃日志,以及其他一些游戏的性能监控等。
 
和之前接入渠道SDK一样,我们也新建一个工程:U8SDK_Plugin_Bugly,将其IsLibrary选中。接入的过程也和渠道SDK一样,我们需要一个config.xml和一个SDKManifest.xml 。其中,config.xml配置如下:
 

SDKManifest.xml配置如下:
 

 
按照Bugly的文档,接入比较简单,只需要在Application的onCreate方法中初始化即可完成接入。按照我们之前在U8SDK中关于Application的统一处理,这里我们只需要定义一个BuglyProxyApplication,实现IApplicationListener接口即可:
 

在onProxyCreate中,我们调用了初始化方法。那么我们再来看看BuglySDK这个单例类:
 

 
接入过程是不是非常简单呢?下面到了关键的地方。上面这些操作和接入一个渠道SDK并没有太大的不同之处。下面,我们就需要在打包工具中配置,使得我们的插件能够在打包的过程中,自动添加到游戏中。
 
首先,我们在打包工具目录/config/plugin目录下,新建一个bugly目录,然后将上面的config.xml,SDKManifest.xml,以及上面接入工程生成的jar包拷贝到这里,然后将bugly提供的jar包,放在libs目录中。这些操作和渠道SDK也是一样的,仅仅是放置的位置发生了改变。

bugly目录结构

这样这个插件的配置就基本完成了。现在,我们怎么将该插件添加到我们游戏当中呢? 这个也很简单。首先,找到游戏的渠道配置文件(config/games/你的游戏/config.xml)。在这个配置文件中
 
1、如果你希望所有渠道包都支持该插件,那么你可以在channels节点上面,配置一个plugins节点,如下配置:

 
其中里面plugin 中name属性的值,就是之前我们在config/plugin目录下建立的插件目录的名称
 
2、如果你希望仅仅是部分渠道支持该插件,那么你可以在channels节点中的每个渠道配置的节点channel中,增加一个plugins的子节点:

 
bugly配置

这样就仅仅当前渠道才会支持这些插件。
 
可能你会发现,渠道SDK的配置参数,我们是统一放到每个游戏目录下的config.xml中。那么插件的参数设置呢? 因为每个游戏的插件参数都不一样,比如Bugly,每款游戏有自己的AppID,AppKey等信息。
 
其实这里有两种做法,一种是和渠道SDK一样,也放在这里统一配置。但是考虑到部分插件的参数不是一点点,像ShareSDK分享插件的参数,所以我们不采用这种方式。
另一种方式,是在config/games/你的游戏/plugin目录下,我们对当前需要支持的插件,也放置一份插件目录下的config.xml文件。然后打包的时候,我们将该游戏下的配置文件去替换原来的配置。对于插件,我们就采用这种方式。
 
所以,从config/plugin/bugly目录下拷贝一份config.xml到config/games/我们的游戏/plugin/bugly下面,然后将这里的config.xml中的参数改为当前游戏的参数。即可
 
好了,到这里,腾讯Bugly插件就算成功接入了。下面就打包测试一下看看吧~

本文出自 U8SDK技术博客,转载时请注明出处及相应链接。

本文永久链接: http://www.uustory.com/?p=1870

评论功能已经关闭,请加入U8SDK技术群进行讨论和咨询:207609068
Ɣ回顶部
U8SDK技术群 x
技术同学请加入
点击加入