怎样将原有app的代码打包成静态库(一)

  最近公司接到一个需求,需要将已有的一个app的代码打包成静态库,然后放在合作商的app下面,实现一个类似子app的插件。即点击合作商app里面某个按钮,即可进入我们的app,这个插件的功能要求跟原有app的功能几乎完全一样,那么怎么去实现这个需求了?

  刚开始博主接到这个需要,想了想需要解决的问题:

  1、图片资源访问,因为原有app获取图片,都是用的默认的UIImage的方式,那么插件要与原有app的代码共享,不可能用两套代码,相互copy。

  2、怎样将xib打包?

  3、插件和原有app的入口不一样了,该怎样处理?

  4、插件代码与商户app中的代码冲突,该怎样处理?

  

  那么下面来看看制作静态库的具体步骤:

  1、打开Xcode,新建workspace,这个是为了管理静态库,demo以及原有app工程。新建的workspace名字叫PluginWork。

  2、引进已有的工程代码,在写文章之前已经做好了一个工程CodeMan。

  

  此时选择你要引进的工程的工程文件,此处添加的是CodeMan.xcodeproj。如果你看见的效果不似下面的图,你可以重启下Xcode后再查看效果。

  

  3、因为我们需要一个测试插件的工程,所以新建一个工程叫PluginDemo。一个注意的地方就是在新建工程时,选择存储的文件时需要选择工程的Group应该为workspace,而不是其他工程。

  4、只剩下静态库插件了,那么就选中PluginDemo工程,新建选择Framework$Library,建一个静态库叫CodeManPlugin,此时静态库的Group应该选择为PluginDemo。

  新建好后的目录结构如下:

    

  至此,原有工程,插件示例工程以及插件都已经新建好,并布置好了结构,但是还没有做好各个工程之间的依赖关系,那么下一篇文章将讲述各工程之间的依赖,以及如何设置依赖等等。

这一篇就到此。

  注: 本文由啸寒原著,请支持原著!转载请附上原文链接: 怎样将原有app的代码打包成静态库(一)

posted @ 2012-07-12 14:55  啸寒  阅读(4718)  评论(10编辑  收藏  举报