【问题标题】:Conflict between cordova-plugin-firebasex and cordova-plugin-firebase-dynamiclinks IONIC 5cordova-plugin-firebasex 和 cordova-plugin-firebase-dynamiclinks IONIC 5 之间的冲突
【发布时间】:2022-01-13 07:16:01
【问题描述】:

当我在 IONIC 5 中为 ios 进行构建时遇到此错误。

为 ios 安装“cordova-plugin-firebasex” 运行命令:pod install --verbose 无法安装“cordova-plugin-firebasex”:错误:pod:命令失败,退出代码为 1。

我已经在firebase deeplink和analytics和firebasex插件的plugin.xml文件中匹配了firebase模块

<pods use-frameworks="true">
                <pod name="Firebase/Core" spec="8.4.0"/>
                <pod name="Firebase/Auth" spec="8.4.0"/>
                <pod name="Firebase/Messaging" spec="8.4.0"/>
                <pod name="Firebase/Performance" spec="8.4.0"/>
                <pod name="Firebase/RemoteConfig" spec="8.4.0"/>
                <pod name="Firebase/InAppMessaging" spec="8.4.0"/>
                <pod name="FirebaseFirestore" git="https://github.com/invertase/firestore-ios-sdk-frameworks.git" tag="8.4.0"/>
                <pod name="Firebase/Crashlytics" spec="8.4.0"/>
                <pod name="Firebase/Functions" spec="8.4.0"/>
                <pod name="Firebase/Installations" spec="8.4.0"/>
                <pod name="GoogleSignIn" spec="5.0.2"/>
                <pod name="GoogleTagManager" spec="7.3.1"/>
            </pods>


在 firebase 分析插件中 -

   <platform name="ios">
        <preference name="IOS_FIREBASE_POD_VERSION" default="8.4.0" />
<platform />

在firebase动态链接插件中-

   <platform name="ios">
        <preference name="IOS_FIREBASE_POD_VERSION" default="8.4.0" />
<platform />

当我运行 pod update 时没有任何反应。请帮助我。提前致谢

【问题讨论】:

  • @MartinZeitler,在项目文件夹上运行 pod repo update 然后在平台/ios/ 上安装 pod 后。我现在收到此错误。预下载:FirebaseInstallations (= 8.10.0, ~> 8.0) 找到满足FirebaseInstallations (= 8.10.0, ~&gt; 8.0), FirebaseInstallations (~&gt; 8.0), FirebaseInstallations (~&gt; 8.4.0) 依赖的规范,但它们需要更高的最小部署目标。

标签: cordova ionic-framework cordova-plugins ionic5 cordova-plugin-firebasex


【解决方案1】:

这个答案可能会迟到,但我希望它仍然对任何寻找答案的人有所帮助。

检查cordova-plugin-firebase-dynamiclinks 包后。我找到了以下依赖项

&lt;dependency id="cordova-plugin-firebase-analytics" version="~6.0.0"/&gt;

这表明动态链接包需要分析插件依赖才能工作。

在构建项目时,构建过程将尝试为您获取分析包,但它会失败,因为该包默认需要 Firebase Analytics ~&gt; 8.2.0。如果您在安装 pod 时检查它们,您会发现在动态链接获取过程中,分析插件将被获取,并且安装失败会导致问题。

因此,解决方案是明确包含 Firebase Analytics 包,如下所示:

 "cordova-plugin-firebasex": {
    "FIREBASE_ANALYTICS_COLLECTION_ENABLED": "true",
    "FIREBASE_PERFORMANCE_COLLECTION_ENABLED": "true",
    "FIREBASE_CRASHLYTICS_COLLECTION_ENABLED": "true",
    "ANDROID_ICON_ACCENT": "#FF00FFFF",
    "ANDROID_FIREBASE_PERFORMANCE_MONITORING": "true",
    "ANDROID_PLAY_SERVICES_AUTH_VERSION": "19.0.0",
    "ANDROID_FIREBASE_ANALYTICS_VERSION": "19.0.0",
    "ANDROID_FIREBASE_MESSAGING_VERSION": "22.0.0",
    "ANDROID_FIREBASE_CONFIG_VERSION": "21.0.0",
    "ANDROID_FIREBASE_PERF_VERSION": "20.0.2",
    "ANDROID_FIREBASE_AUTH_VERSION": "21.0.1",
    "ANDROID_FIREBASE_FIRESTORE_VERSION": "23.0.2",
    "ANDROID_FIREBASE_FUNCTIONS_VERSION": "20.0.0",
    "ANDROID_FIREBASE_IID_VERSION": "21.1.0",
    "ANDROID_FIREBASE_INSTALLATIONS_VERSION": "17.0.0",
    "ANDROID_FIREBASE_CRASHLYTICS_VERSION": "18.1.0",
    "ANDROID_FIREBASE_CRASHLYTICS_NDK_VERSION": "18.1.0",
    "ANDROID_GSON_VERSION": "2.8.7",
    "ANDROID_FIREBASE_PERF_GRADLE_PLUGIN_VERSION": "1.4.0"
  },
  "cordova-plugin-firebase-analytics": {
    "ANDROID_FIREBASE_ANALYTICS_VERSION": "19.0.0",
    "IOS_FIREBASE_ANALYTICS_VERSION": "8.4.0",
    "ANALYTICS_COLLECTION_ENABLED": "true",
    "AUTOMATIC_SCREEN_REPORTING_ENABLED": "true"
  },
  "cordova-plugin-firebase-dynamiclinks": {
    "APP_DOMAIN_NAME": "***",
    "ANDROID_FIREBASE_DYNAMICLINKS_VERSION": "20.0.0",
    "IOS_FIREBASE_DYNAMICLINKS_VERSION": "8.4.0",
    "APP_DOMAIN_PATH": "/"
  },

这将允许将 iOS 版本的 Analytics 与动态链接中的版本一起明确设置。

注意:package.json 中插件的排序有时会中断包获取过程。

这对我来说已经奏效了,希望它也对你有用。

【讨论】:

    猜你喜欢
    • 2021-06-14
    • 1970-01-01
    • 1970-01-01
    • 2018-09-16
    • 2021-04-12
    • 2020-05-10
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多