在国内的android市场大家都知道那个杂啊,大大小小的加起来几百个渠道,就算是这样,但是我们还是要支持尽量多的渠道,然后我们就要面对各种的sdk了。那怎样才能管理好那么多的sdk呢。相信大家都会有不同的方法去管理。然而我这里就是用库工程来实现管理的。
我创建一个库工程来管理一个库工程,在库工程中我们按照开发文档的要求在库工程中实现好。这里应该没有什么问题。好了,我们来看下怎么让库工程起作用。
- 在主工程里面的project.properties文件里面加上库的引用 打开后 写上 android.library.reference.index=相对目录 其中 index就是一个序号,从1开始
- 加上manifestmerger.enabled=true
好了,如果没有意外的话,这已经足以让库工程起作用了。不过大家都知道,程序员的世界充满着意外,我把意外叫做BUG ,出现了意外就只能改了咯。
在AndroidManifest.xml 文件里面标记 uses-sdk 的内容在每个工程里面是必须一样的,不然就会报 manifestmerger合并错误。
在库工程中的AndroidManifest.xml中 application标签中的属性就不要了,因为没有用。
需要放到assets里面的资源就只能全都放在主工程里面的 assets里面了。默认情况下库工程中的assets是没有用的。
在libs文件里面jar包中有用到相同名字jar的话,那么它们的内容也必须要相同例如一般都会用到的android-support-v4.jar 当然你也可以保证工程里面只有一个这样的包,其他工程接的sdk里面需要这个包,也可以不拉进去。因为你已经保证工程里面有一个了。
好了,在android里面需要注意的就差不多了。
然而我们的是cocos2dx工程。有一些人性化的库会提供cocos2dx版本的sdk,其实就是c++版本,只不过是帮你写好了jni的接口了而已。但是我们要接非常多的sdk。这样就需要统一了。所以我们一般用不到这些人性化的sdk了。