Facebook SDK能够记录自定义事件和标准事件。标准事件是"购买" "加入购物车" "完成注册"等...
通过录制这些标准活动,您可以访问Facebook广告上的特定出价功能,而这些功能是您在没有活动的情况下获得的。
我有一个拥有React Native FBSDK
的应用定义一个事件有两种方法 - 一种用于购买,另一种用于其他所有事件here
在Github上的SDK内或在Facebook developer platform上的事件跟踪文档中,有关于反应的标准事件没有文档。
现在我正试图通过使用各种名称来跟踪标准事件,这些名称是在FB的文档中记录的。我尝试过以下方法:
AppEventsLogger.logEvent('FBSDKAppEventNameCompletedRegistration');
AppEventsLogger.logEvent('CompletedRegistration');
AppEventsLogger.logEvent('Completed Registration');
所有这些只是使用这些名称创建自定义事件,但不被识别为标准事件。
有没有人使用FB SDK的React Native包装器获得标准事件?如果是这样,你怎么命名事件让FB识别它们?
答案 0 :(得分:6)
看起来你必须传递那些标准事件被评估的字符串,即代替'FBSDKAppEventNameCompletedRegistration',你必须使用:'fb_mobile_complete_registration'。
这是source:
对不起,如果这有点晚了。希望这会有所帮助。
答案 1 :(得分:1)
我设法通过使用tool on Facebook's documentation生成标准事件代码来找到实际的事件名称,在AppDelegate.m
中运行代码,并从Events Manager获取确切的键值。通过这种回旋方式,我意识到“添加到购物车”事件的实际名称是fb_mobile_add_to_cart
。从那里我搜索了名称,并找到了Marketing API中记录的列表(为什么没有App Events?)。
我不知道它是否在正确的位置,但是您可以参考https://developers.facebook.com/docs/marketing-api/app-event-api/以获得实际的标准事件名称和参数名称。至少在我看来,它有效。这是我的“添加到购物车”事件代码:
function logAddToCart(totalPrice, contentType, contentId, currency) {
const params = {
'fb_content_type': contentType,
'fb_content_id': contentId,
'fb_currency': currency
};
AppEventsLogger.logEvent('fb_mobile_add_to_cart', totalPrice, params);
}
答案 2 :(得分:0)
我制作了一个包含所有事件的简单程序包。就像
一样导入import FBEvents from "react-native-fbsdk-events";
// ...
AppEventsLogger(FBEvents.COMPLETE_REGISTRATITON, params);