从同一个应用程序中的框架访问iOS应用程序中嵌入的静态库

时间:2017-03-23 09:09:21

标签: ios frameworks static-libraries

是否可以从添加到同一应用程序中的框架中添加到iOS应用程序的静态库中访问符号。

我正在尝试构建一个依赖于客户购买的第三方静态库的ios框架。因此,客户将静态库添加到应用程序。

但是我的框架需要从应用程序中添加的静态库中读取符号。

任何指针都会非常感激。

- 谢谢, Syed Yusuf

2 个答案:

答案 0 :(得分:1)

您应该将框架与该静态库链接起来。否则,您无法访问静态库的符号。因为它们嵌入在客户的应用程序中。

答案 1 :(得分:0)

使用'Cocoapods'作为依赖管理器可以帮助您:

例如 - 使用Alamofire网络框架的框架:

  1. 创建框架项目
  2. 使用Cocoapods并添加'pod'Alamofire','〜>你的podfile 4.0''。
  3. 构建框架并将其添加到打算使用此框架的项目中。
  4. 在你的app项目中还添加'pod'Alamofire','〜> 4.0'到您的podfile
  5. 就是这样。

    顺便说一下 - 如果您的应用程序项目不会将依赖框架添加到其podfile中,那么在构建应用程序时会看到链接器错误,该错误看起来像这样:

    “dyld:未加载库:@ rpath / Alamofire.framework / Alamofire   参考自:/private/var/containers/Bundle/Application/8B381B5F-6B86-4CDD-8A49-E0CBF9C04786/test.app/Frameworks/MyFramework.framework/MyFramework   原因:图片未找到“

    希望这有用。