打包静态库,静态库依赖的第三方库依赖报错和测试工程的第三方库依赖报错冲突怎么解决

您需要登录后才可以操作 |
TA的每日心情衰 10:04签到天数: 4 天连续签到: 1 天[LV.2]偶尔看看I
iOS插件开发能够打包其他第三方静态库和framework么?
如题,想做一个iOS第三方的插件,想问问能不能将第三方的静态库(.a)和framework和bundle资源包,打包进插件正常使用呢?
TA的每日心情衰 10:04签到天数: 4 天连续签到: 1 天[LV.2]偶尔看看I
自己先顶一个
TA的每日心情开心 10:40签到天数: 183 天连续签到: 1 天[LV.7]常住居民III
ios的插件没做过&&但是android插件开发时候的jar包可以& &推算应该ios的也可以吧
TA的每日心情衰 10:04签到天数: 4 天连续签到: 1 天[LV.2]偶尔看看I
ios的插件没做过&&但是android插件开发时候的jar包可以& &推算应该ios的也可以吧 ...
哦哦,非常感谢,我们还是期待官方给一个统一说法哈
TA的每日心情开心 17:52签到天数: 127 天连续签到: 1 天[LV.7]常住居民III
您好!可以,这个在我们文档里有说明。。
AppCan官方微信将NDK编译的第三方静态拷贝到JNI目录下,在Android.mk中添加如下代码
以openssl静态库(libcrypto-static.a)为例
第一种链接方法:LOCAL_LDFLAGS := libcrypto-static.a
第二种链接方法:LOCAL_LDLIBS := libcrypto-static.a
第三种链接方法:
include $(CLEAR_VARS)
LOCAL_MODULE := third_static_lib (可以随便起一个名字)
LOCAL_SRC_FILES := libcrypto-static.a
include $(PREBUILT_STATIC_LIBRARY)
//在你要编译的模块中引用third_static_lib
LOCAL_STATIC_LIBRARIES := third_static_lib
阅读(...) 评论()主题 : 新手求教静态库的第三方依赖问题
级别: 新手上路
可可豆: 12 CB
威望: 12 点
在线时间: 12(时)
发自: Web Page
来源于&&分类
新手求教静态库的第三方依赖问题&&&
在静态库里,调用了一些其他的第三方依赖,比如AFNetworking等等。。。用pod package打的包请问第三方依赖是否也可以打进去?因为是要打包到cordova上使用,所以想全部打进去,再用cordova的plugin直接调用试了使用xcode新建一个静态库项目,打出来的.a文件只有3M,用pod package打包,.a文件有20多兆新手不懂,前来请教
UID: 123750
发帖: 1850
可可豆: 3202 CB
威望: 3133 点
在线时间: 1249(时)
发自: Web Page
静态库默认是将所有内联的各种文件一起打包进去,不管是系统级的还是你自己写的,只要调用到了,哪怕只是一个函数,整个文件也会一起打包进去。对于为何打的包大小不同,只能说明是你打包的环境不同导致包的大小不同,比如,在xcode 静态哭打包,它的很多环境都已经建好,大量的标准库文件无序重复打包,但是podpackage 并不同,它本身并不带这写环境,所以只能联通环境一起打包进去所以造成.a大小并不相同。其实这两个库都可以用,并且,最终打成的ipa包预测大小一样,因为及时是自带的环境,最终部署的时候 重复环境是没有必要的唯一的区别是:你的工程项目可能稍微看起来大一点而已
级别: 新手上路
可可豆: 12 CB
威望: 12 点
在线时间: 12(时)
发自: Web Page
回 1楼(wszcug) 的帖子
十分感谢解惑!
级别: 新手上路
可可豆: 12 CB
威望: 12 点
在线时间: 12(时)
发自: Web Page
回 1楼(wszcug) 的帖子
我使用xcode打包库文件,在Product里面发现了生成的库文件,各种通过pod安装过来的依赖也都生成了对应的.a文件,还包含了所有的第三方依赖的头文件。结构是这样的myLib 通过cocoaPods引入第三方的依赖比如AFNetworking, Mantle。。。。build出来是像这样的:libMylib.a,libAFNetworking.a,libMantle.a,xxx.h,xxx.h,xx.h问题是:如果这样的话,要使用这个打包的库,岂不是需要把所有的.a文件都要带上,还要带上30-40个头文件?
UID: 123750
发帖: 1850
可可豆: 3202 CB
威望: 3133 点
在线时间: 1249(时)
发自: Web Page
只带偷文件是不可能的,实际上打包的时候所有的头文件都组合成一个头,所有的实现文件都打包成.o文件。头里面是调用入口,.o 才是真正的实现,因此只有头没实现 是不可能使用的,就是打包的时候也会出错
关注本帖(如果有新回复会站内信通知您)
苹果公司现任CEO是谁?2字 正确答案:库克
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 浏览移动版

我要回帖

更多关于 ios第三方静态库冲突 的文章

 

随机推荐