I'm trying to log some events in my iOS application using the Facebook Analytics SDK.
First, I logged an event and this works well:
FBSDKAppEvents.logEvent(FBSDKAppEventNameInitiatedCheckout, valueToSum: price, parameters: parameters)
Then I tried to log the next one:
FBSDKAppEvents.logEvent(FBSDKAppEventNamePurchased, valueToSum: price, parameters: parameters)
And Xcode says that there is no such identifier named FBSDKAppEventNamePurchased
.
I dived into the Facebook documentation and recognized that it exists:
So, I really have not idea what hell is going on. Does anybody had the same issue?
Okay, finally I found the reason of the problem and it's solution.
The FBSDKAppEventNamePurchased
event constant is a private constant of Facebook SDK, so we can't use it in our code directly.
We should use:
FBSDKAppEvents.logPurchase(price, currency: currencyCode, parameters: parameters)
instead of:
FBSDKAppEvents.logEvent(FBSDKAppEventNamePurchased, valueToSum: price, parameters: parameters)
.
I really don't know why Facebook still have the FBSDKAppEventNamePurchased
event on their documentation pages, but this way is the way to go.