繁体   English   中英

用于cordova-ios 5.1.1的cocoapod和cordova-plugin-firebase-authentication的正确版本

[英]The correct version of cocoapod and cordova-plugin-firebase-authentication for cordova-ios 5.1.1

我有一个在 Android 上完美运行的应用程序:

离子 4 科尔多瓦 9 科尔多瓦插件-firebase-身份验证 3.3.0

现在我想在 IOS 上实现它,我遇到了各种错误。

我得到的第一个是cordova-plugin-firebase-authentication 3.3.0版与cordova-ios 5.1.1(cordova 9的默认版本)不兼容。 它要求我使用高于 6 的cordova-ios 版本,但该选项对我来说是不可能的,因为我的许多插件停止使用cordova 10 和cordova-ios 6.1.1。

所以我尝试降低cordova-plugin-firebase-authentication的版本,直到找到适用于cordova-ios 5.1.1和cordova 9的版本。

但是从 3.2.0 版本开始,我收到以下错误:

Failed to install 'cordova-plugin-firebase-authentication': Error: pod: Command failed with exit code 1 Error output:

at ChildProcess.whenDone (/…node_modules/cordova-common/src/superspawn.js:135:23)
at ChildProcess.emit (events.js:314:20)
at maybeClose (internal/child_process.js:1021:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
For more information about you at the moment, I have cocoapod 1.10.0 installed.

这就是为什么我问你,如果你们中的任何人能够做到这一点,哪个版本的 cordova-plugin-firebase-authentication 可以很好地与cordova 9 和cordova-ios 5.1.1 配合使用。 另外,用哪个版本的cocoapod,编译好呢?

干杯!

问题在于用不同的版本复制相同的依赖项。 为了解决这个问题,你需要在同一版本中对齐你的依赖项。

使用 Cordova 安装插件的过程分两个阶段进行; 首先是在Cordova项目级别安装插件; 这是在package.json和config.xml文件中注册插件及其变量,在plugins文件夹中安装node包和下载插件。 Cordova 在第二阶段将插件分散到已安装的平台,说 IOS 可可豆荚负责执行此操作。

所以你可以手动执行这个过程; 当你运行一个插件的安装,报错在cocoapods中,说明进入了第二阶段; 您可以转到平台内的 ios 文件夹并执行:

pod install --verbose

您将再次遇到相同的问题,但会更详细地描述错误。

就您而言,这是因为您的插件引用了不同版本的 Firebase。

要解决这个问题,请打开 ios 文件夹内的 Podfile 文件,它在所有使用 Firebase 的依赖项中设置相同的版本。

稍后再运行

pod install --verbose

如果这有效,请返回主项目中的 plugins 文件夹,并在每个插件的配置中,设置与使用 pod install 成功安装相同的值。

现在,如果您想将它们保存在您的项目中或确保正确安装,您可以使用以下变量:

ANDROID_FIREBASE_AUTH_VERSION
IOS_FIREBASE_AUTH_VERSION

要设置该值,您需要来自 Cordova。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM