Firebase iOS SDK - 为推送通知执行 utm 归因的正确方法
Firebase iOS SDK - proper way to do utm attribution for Push Notifications
有一个客户使用“session_start”事件来跟踪 Web+App 上 3 个平台的转化情况 属性。
对于应用 links 和深度 links,这非常有效。单击通用 link 打开应用程序并触发带有 utm 属性的 SESSION_START。
对于推送通知,这在网络上是可以的,在 Android 上也可以(目前还不确定如何,但那是另一回事了)。但是在 iOS 上,SESSION_START 不会因归因而被解雇。
考虑使用自定义 NOTIFICATION_OPENED 事件,并在其中附加归因参数。
SDK 不支持修改或劫持 SESSION_START 事件。
将属性附加到推送通知的正确方法是什么?
简单地说 - 默认情况下 Firebase iOS SDK 不支持立即开箱即用,而 Firebase Android SDK 支持,因为 Android SDK 通过 FCM 触发并立即挂钩进入支持开箱即用的 utm 标签的动态链接功能(我认为),而 Firebase iOS SDK 改为挂接到 APNS。
我们就这样解决了这个问题
- 禁用 swizzling(FirebaseAppDelegateProxyEnabled 在 .plist 中为 false)
- 挂接到以下 AppDelegate 函数
- 但特别是,从
application(_:open:options:)
调用 handleopenurl(url)
,传入从键值对中选择的推送通知提供商提取的 url。对于 Localytics,在 ll_deep_link_value
中找到了深度 link
希望这对未来的侦探有所帮助。由于我不是真正的开发者,上面的一些细节可能不是 100% 准确,所以如果你找到了,请留下更正。
一般来说,如果组合多个推送通知和分析提供程序,请避免使用 FB Swizzling 和 Localytics auto init 等自动集成。
有一个客户使用“session_start”事件来跟踪 Web+App 上 3 个平台的转化情况 属性。
对于应用 links 和深度 links,这非常有效。单击通用 link 打开应用程序并触发带有 utm 属性的 SESSION_START。
对于推送通知,这在网络上是可以的,在 Android 上也可以(目前还不确定如何,但那是另一回事了)。但是在 iOS 上,SESSION_START 不会因归因而被解雇。
考虑使用自定义 NOTIFICATION_OPENED 事件,并在其中附加归因参数。
SDK 不支持修改或劫持 SESSION_START 事件。
将属性附加到推送通知的正确方法是什么?
简单地说 - 默认情况下 Firebase iOS SDK 不支持立即开箱即用,而 Firebase Android SDK 支持,因为 Android SDK 通过 FCM 触发并立即挂钩进入支持开箱即用的 utm 标签的动态链接功能(我认为),而 Firebase iOS SDK 改为挂接到 APNS。
我们就这样解决了这个问题
- 禁用 swizzling(FirebaseAppDelegateProxyEnabled 在 .plist 中为 false)
- 挂接到以下 AppDelegate 函数
- 但特别是,从
application(_:open:options:)
调用handleopenurl(url)
,传入从键值对中选择的推送通知提供商提取的 url。对于 Localytics,在ll_deep_link_value
中找到了深度 link
希望这对未来的侦探有所帮助。由于我不是真正的开发者,上面的一些细节可能不是 100% 准确,所以如果你找到了,请留下更正。
一般来说,如果组合多个推送通知和分析提供程序,请避免使用 FB Swizzling 和 Localytics auto init 等自动集成。