【问题标题】:ios - swizzling of firebase cloud messingios - firebase 云消息传递
【发布时间】:2019-07-12 18:04:38
【问题描述】:

我正在使用 Firebase Cloud Messaging 进行推送通知的应用程序。阅读它的文档后,我对“Swizzling disabled”有点困惑,我试图找到一些正在谈论它的教程,但不幸的是没有任何教程。你能帮我描述一下“swizzling”的确切含义吗?什么情况下我们需要使用它?

非常感谢。 瑞恩

【问题讨论】:

    标签: ios apple-push-notifications firebase-cloud-messaging swizzling


    【解决方案1】:

    方法调配意味着您在运行时更改给定函数的实现。

    当您无权访问函数的代码或不想修改库的代码以及不适用继承时,通常使用它。

    Firebase 的基本功能是:除了 Apple 公开的委托之外,您无权访问推送通知 API/函数。通过调配这样的函数,您可以为其当前正在执行的操作添加一些逻辑。 (您仍然可以像使用 super 一样调用“以前的”函数或完全替换其原始用途)。

    这就是 Firebase 要求您激活推送通知的方式。它使您可以更轻松地将其添加到您的代码中,并为 Firebase 提供很大的灵活性,因为您的 AppDelegate 中的一行可以运行任何他们想要的。

    注意:举个简单的例子:您无法访问print 函数,您可以使用它。而不是将打印函数包装在自定义函数中并在任何地方替换它的用法;您可以使用您的自定义功能之一调整print 以扩展或替换其原始功能。由于它是在运行时应用的,因此您无需更改项目中的任何内容,所有 print 调用都将“重定向”到您的新自定义函数。

    【讨论】:

    • 非常感谢您的回复@Devous。对我很有帮助!!
    • 没问题,请将答案标记为已接受,如果您认为答案正确,请点赞?谢谢!
    猜你喜欢
    • 2020-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-31
    • 1970-01-01
    相关资源
    最近更新 更多