gpt4 book ai didi

reactjs - Firebase 动态链接不适用于带电容器的 ios

转载 作者:行者123 更新时间:2023-12-04 13:55:28 25 4
gpt4 key购买 nike

我有一个使用电容器的 ionic react 应用程序。
对于 firebase 动态链接,我使用了cordova-plugin-firebase-dynamiclinks。 ( https://github.com/chemerisuk/cordova-plugin-firebase-dynamiclinks ),因为它是 ionic 推荐的,并运行“ionic cap sync”。
一切都适用于 android ,但在 ios 上,当通过动态链接输入应用程序时,不会触发 OnDynamicLink 功能。
深入研究代码,我看到插件的 AppDelegate 文件(例如:FirebaseDynamicLinks+AppDelegate.swift)下的函数没有被调用,而是主要的 AppDelegate.swift 函数,特别是以下函数:
"application:continueUserActivity:restorationHandler"和 "application: UIApplication, open url: URL")
改为调用。
我知道有动态链接的方法调配,但它似乎不起作用。
我在这个问题上花了两天时间没有成功。
什么可能导致问题?
更新
经过一些研究,我意识到方法 swizzling 不起作用的原因是因为插件代码在 Objective-c 中,而应用程序在 swift 中,
因此,当尝试对 App Delegate 函数进行 swizzle 时,要 swizzle 的函数的选择器不匹配。
所以现在我更新的问题是:如何处理此类情况?
我曾尝试将 @objc 属性添加到应该被 swizzled 的 App Delegate 函数中,但没有成功。

最佳答案

您对没有执行的 swizzled 方法是正确的。似乎是由 Capacitor 引起的(该插件是为 Cordova 编写的)。
虽然不能完全回答您的问题,但我 建议使用 Capacitor 插件 :https://github.com/Turnoutt/capacitor-firebase-dynamic-links
我今天测试了它,适用于 Android 和 iOS。

关于reactjs - Firebase 动态链接不适用于带电容器的 ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63248465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com