【发布时间】:2017-09-19 13:34:52
【问题描述】:
如果我在 iOS .ipa 文件的主可执行文件上运行 otool -L ...,我会看到以下输出:
/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
/System/Library/Frameworks/UIKit.framework/UIKit
...
@rpath/DMSDK.framework/DMSDK
...
/usr/lib/libz.1.dylib
/usr/lib/libc++.1.dylib
/usr/lib/libiconv.2.dylib
/usr/lib/libsqlite3.dylib
这告诉我我的应用使用/引用/需要的动态库。
我的问题:这些是否指的是存在于 ios 设备本身上的全局目录?我相信答案是肯定的,但这并不意味着所有 iOS 设备上都已经安装了libsqlite(我只会觉得这令人惊讶,因为作为一名网络开发人员,我认为 sqlite 更像是一个用户空间的东西,我会很惊讶它会得到 Apple 的足够支持以成为预安装的 dylib)?
为什么有些 dylib 来自 /System/Library/Frameworks 而有些来自 /usr/lib/...?我可以找到list of iOS frameworks,但我在哪里可以找到 iOS 设备中支持的 dylibs 列表?
【问题讨论】:
标签: ios iphone frameworks dylib otool