组件化开发之04 如何将一些静态库打包成动态库

在组件化开发过程中遇到静态库(如支付宝、微信支付SDK等)与动态库冲突的问题。通过将静态库打包成动态库,如bugly、高德地图、RAC、极光推送等,解决了组件间的依赖问题,减少了包体积,提高了编译速度,并利用Method Swizzling实现了轻量级的第三方支付和登录功能。
摘要由CSDN通过智能技术生成

笔者打造出来了5个基础组件,满怀信心准备大干一场时候,发现业务组件用到支付宝 , 微信支付 SDK ,微博 SDK ,高德地图 SDK 等静态库. a ,.framework 文件时候,链接到组件时候报错误,而且还不容易解决,因为我整个工程都是 use_frameworks! ,将来 cocoapods 会把每个 pod 编译成一个个的 framework 动态库,这样静态库就没法使用了,这段时期支付宝不能不用,无法从主工程中抽离出来,我不得不去 github 搜索支付宝动态库,还好有个 DLAlipay 的支付宝动态库可供使用,于是 每个业务组件 s.dependency ‘DLAlipay’ 这样在组件内部就能使用到支付宝 SDK ,能够被链接到工程中.

妥协的过程总是让人难以接受,好在我逐步的把工程里边用到静态库.framework的地方 都打包成一个个的动态库 framework, 于是

bugly 动态库
image.png

AMMapLib 高德地图 AMFoundation AMSerchAPI AMMapKit AMLocation 4个 framework 合并成一个动态库 framework

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dzb1060545231

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值