Dynamic Library 动态库

Dynamic Library 

大部分的iOS开发者可能没有接触过Dynamic Library的概念,因为面向App StoreApp用不到它。但是放眼望去,Cydia中的tweak插件无一不是以Dynamic Library的形式工作的,正式这些tweak插件的存在让我们能够随意定制自己的iOS。所以,有必要了解Dynamic Library 的基本知识。

Static Library 的概念很简单,在一个App启动时,系统会把App的代码和它所连接的Static Library全部放进分配好的内存空间里,不过因为一次性加载的内容过多,会造成App启动慢。

Dynamic Library 则相对智能些,只有当App用到这个Library时,系统才把这个Library加载进内存。具体来说,当一个App启动时,iOS内核创建一个新的进程,然后把App需要的Dynamic Library 加载进App的内存空间。

值得一提的是,虽然Dynamic Library 的功能非常抢单,但是其本身并不是可执行程序,而是以类似插件的形式存活在一个App钟的,是这个App的一部分。所以,Dynamic Library的权限及内存空间是由加载它的那个App决定的,比如你写了一个instagramtweak插件,用来将你喜欢的图片保存在本地,如果你的保存目录是/var/mobile/Applications/InstagramGUID/Documents,那么这样操作没有问题,你的tweak插件能够非常好的工作;如果你想保存在/Developer下,而你又没注意或忘记了这个tweak插件是存活在一个App Store App 里,那么可能保存了一堆美图,准备回头再看,却发现/Developer 里啥也没有———你的写操作都被sanbox给禁掉了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值