跳到主要内容

连接库

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

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

对于大多数库来说,只需拖动两个文件即可快速完成,有时需要第三步,但不会更多。

注意

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

自动链接

安装带有原生依赖的库

shell
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 时。)