跳至主要内容

链接库

并非每个应用都使用所有原生功能,并且包含支持所有这些功能的代码会影响二进制文件的大小……但我们仍然希望在您需要时支持添加这些功能。

考虑到这一点,我们将许多这些功能作为独立的静态库公开。

对于大多数库来说,只需拖放两个文件即可,有时需要第三步,但不会超过此。

注意

我们随 React Native 一起提供的全部库都位于存储库根目录下的 Libraries 文件夹中。其中一些是纯 JavaScript,您只需 require 它即可。其他库也依赖于一些原生代码,在这种情况下,您必须将这些文件添加到您的应用中,否则,一旦您尝试使用该库,应用就会抛出错误。

自动链接

安装具有原生依赖项的库

npm install <library-with-native-dependencies> --save
信息

--save--save-dev 标志对于此步骤非常重要。React Native 将根据您的 package.json 文件中的 dependenciesdevDependencies 链接您的库。

就是这样!下次构建应用时,由于 自动链接 机制,原生代码将被链接。

手动链接

步骤 1

如果库具有原生代码,则其文件夹内必须存在一个 .xcodeproj 文件。将此文件拖到 Xcode 中的项目中(通常位于 Xcode 中的 Libraries 组下);

步骤 2

点击您的主项目文件(表示 .xcodeproj 的文件),选择 Build Phases,然后将静态库从您正在导入的库内的 Products 文件夹拖到 Link Binary With Libraries

步骤 3

并非每个库都需要此步骤,您需要考虑的是

我是否需要在编译时知道库的内容?

这意味着,您是在原生端使用此库,还是仅在 JavaScript 中使用?如果您仅在 JavaScript 中使用它,那么您就可以开始了!

如果您确实需要从原生调用它,那么我们需要知道库的头文件。为此,您必须转到项目的文件夹,选择 Build Settings 并搜索 Header Search Paths。在那里,您应该包含库的路径。(此文档过去建议使用 recursive,但现在不再推荐,因为它会导致细微的构建失败,尤其是在使用 CocoaPods 时。)