向 Ionic 4 项目添加 cordova-plugin-firebase-dynamiclinks 导致无法构建
Posted
技术标签:
【中文标题】向 Ionic 4 项目添加 cordova-plugin-firebase-dynamiclinks 导致无法构建【英文标题】:Addition of cordova-plugin-firebase-dynamiclinks to Ionic 4 project renders unable to build 【发布时间】:2020-05-10 08:47:25 【问题描述】:在为 ios w xcode 构建 Ionic 4 Cordova 应用程序时如何解决与插件冲突的任何指导,我们将不胜感激。
以下是我的工作插件 - 即使用这些插件成功构建项目。
但是,当尝试使用以下方法添加 cordova-plugin-firebase-dynamiclinks 时:
$ cordova plugin add cordova-plugin-firebase-dynamiclinks --variable APP_DOMAIN="example.ca" --variable PAGE_LINK_DOMAIN="example.page.link";
添加失败并出现错误:
Failed to install 'cordova-plugin-firebase-dynamiclinks': Error: pod: Command failed with exit code 31
at ChildProcess.whenDone (/Users/name/project/node_modules/cordova-common/src/superspawn.js:135:23)
at ChildProcess.emit (events.js:198:13)
at maybeClose (internal/child_process.js:982:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
pod: Command failed with exit code 31
通过搜索发现,我已经尝试过:
platforms/ios/pod repo 更新 平台/ios/pod 安装
在添加 cordova-plugin-firebase-dynamiclinks 之前成功执行
我的插件工作集(这些在添加动态链接插件之前构建成功):
cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.1.0 "cordova-plugin-androidx-adapter"
cordova-plugin-datepicker 0.9.3 "DatePicker"
cordova-plugin-device 2.0.3 "Device"
cordova-plugin-firebasex 7.0.1 "Google Firebase Plugin"
cordova-plugin-google-analytics 1.8.6 "Google Universal Analytics Plugin"
cordova-plugin-googleplus 8.2.1 "Google SignIn"
cordova-plugin-inappbrowser 3.2.0 "InAppBrowser"
cordova-plugin-ionic-keyboard 2.2.0 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 4.1.3 "cordova-plugin-ionic-webview"
cordova-plugin-splashscreen 5.0.3 "Splashscreen"
cordova-plugin-statusbar 2.4.3 "StatusBar"
cordova-plugin-whitelist 1.3.4 "Whitelist"
cordova-sqlite-storage 3.4.1 "Cordova sqlite storage plugin - cordova-sqlite-storage plugin version"
cordova-support-google-services 1.3.2 "cordova-support-google-services"
离子信息:
Ionic CLI:5.4.15 (/usr/local/lib/node_modules/ionic) 离子框架:@ionic/angular 4.11.8 @angular-devkit/build-angular:0.800.6 @angular-devkit/原理图:8.1.3 @角/cli:8.2.2 @ionic/angular-toolkit:2.0.0
科尔多瓦:
Cordova CLI:9.0.0 (cordova-lib@9.0.1) 科尔多瓦平台:ios 5.1.1 Cordova 插件:cordova-plugin-ionic-keyboard 2.2.0、cordova-plugin-ionic-webview 4.1.3(和其他 14 个插件)
实用程序:
cordova 分辨率:0.8.1 本机运行(可用更新:0.3.0):0.2.8
系统:
ios-sim : 8.0.2 NodeJS : v10.16.3 (/usr/local/bin/node) npm:6.13.6 操作系统:macOS Mojave Xcode:Xcode 11.3.1 构建版本 11C504
【问题讨论】:
你的命令前面没有离子。应该以“ionic cordova plugin add ...”开头 【参考方案1】:cordova-plugin-firebase-dynamiclinks
与 cordova-plugin-firebasex
冲突。
所以你需要同步Firebase Dependency
查看 Podfile 示例
pod 'Firebase/Core', '6.17.0'
pod 'Firebase/Auth', '6.17.0'
pod 'Firebase/Messaging', '6.17.0'
pod 'Firebase/Performance', '6.17.0'
pod 'Firebase/RemoteConfig', '6.17.0'
firebase 版本是“6.17.0”。这是因为firebasex
所以你必须改变
plugins/cordova-plugin-firebase-dynamiclinks/plugin.xml
<pods>
<pod name="Firebase/Analytics" spec="~> 6.17.0" />
<pod name="Firebase/DynamicLinks" spec="~> 6.17.0" />
</pods>
它必须与 firebasex 的 Firebase 依赖相同。
【讨论】:
以上是关于向 Ionic 4 项目添加 cordova-plugin-firebase-dynamiclinks 导致无法构建的主要内容,如果未能解决你的问题,请参考以下文章
UIWebView 向 Apple 提交 ionic 应用程序时出错