我目前有一个离子应用程序,它使用以下插件:https://github.com/jeduan/cordova-plugin-facebook4,以便用户可以使用Facebook SDK登录我的应用程序,以便我可以使用logEvent方法跟踪某些自定义事件。 / p>
由于它是一个离子应用程序,我有一个iOS和Android版本的应用程序。自定义事件在Android平台上按预期工作。奇怪的是,在iOS中,当事件被触发时,我可以清楚地看到成功事件处理程序被调用,表明成功,但是,进入Facebook分析,我可以清楚地看到没有保存自定义事件数据。它跟踪通常的应用程序打开等,只是自定义事件似乎没有为iOS录制。
为了清楚这些日志记录是在用户登录后发生的,我听说它只适用于iOS,如果你先通过FB验证。
所以我首先有一个通用函数:
$scope.fbLogEvent = function(eventName, params, valueToSum) {
if (valueToSum == null) {
valueToSum = 1;
}
if (!ionic.Platform.is('browser')) {
return facebookConnectPlugin.logEvent(eventName, params, valueToSum, function(success) {
return console.info('FB', eventName, 'event has been logged');
}, function(error) {
return console.error(error);
});
}
};
然后我调用以下函数来进行实际跟踪
$scope.fbLogEvent('item-requested', { item: $scope.item });
FB item-requested event has been logged
。更新2017年3月3日 - 对于它的价值,如果他们预定义事件而不是自定义事件,它似乎会拾取这些事件。