Facebook重新定位React Native的像素代码

时间:2017-03-30 03:55:31

标签: facebook facebook-graph-api react-native facebook-events facebook-pixel

您好我尝试为我的本机应用添加facebook重定向像素,我希望社区可以帮助我澄清一些事情。首先,要跟踪产品的事件PageViewViewContent,我将以下脚本添加到产品页面。

<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','//connect.facebook.net/en_US/fbevents.js');

fbq('init', 'xxxxxxxxxxxxxxxx');
fbq('track', 'PageView');
fbq('track', 'ViewContent', {

        content_name: 'Truyện Cổ Grimm (Bìa Cứng)',
        content_category: 'Truyện đọc',
        content_ids: ['8935212329736'],
        content_type: 'product',
        value: 153750,
        currency: 'VND'

});
</script>

我想知道如何使用React Native实现相同目标。我看到Facebook有FB SDK for native native(https://developers.facebook.com/docs/react-native),我想问一下,这个SDK是什么,我可以实现类似于我上面的web。如果我查看产品,我会这样做吗?

AppEventsLogger.logEvent('ViewContent');

如果是这样,我可以指定其他参数,也许是这样吗?

AppEventsLogger.logEvent('ViewContent', {

    content_name: 'Truyện Cổ Grimm (Bìa Cứng)',
    content_category: 'Truyện đọc',
    content_ids: ['8935212329736'],
    content_type: 'product',
    value: 153750,
    currency: 'VND'
});

任何有此成功经验的人,请帮帮我。非常感谢你

1 个答案:

答案 0 :(得分:7)

猜测要与react-native-fbsdk一起使用的事件是正确的。如果您要查看此SDK here的来源,您会发现可以通过各种方式使用logEvent方法。

您猜测的方法:

AppEventsLogger.logEvent('ViewContent', {
    content_name: 'Truyện Cổ Grimm (Bìa Cứng)',
    content_category: 'Truyện đọc',
    content_ids: ['8935212329736'],
    content_type: 'product',
    value: 153750,
    currency: 'VND'
});

将在FB Analytics上记录事件,然后您可以根据这些参数自定义报告。在我使用它的过程中,我遇到了一个不支持数组的问题。所以上面的代码将改变如下:

AppEventsLogger.logEvent('ViewContent', {
    content_name: 'Truyện Cổ Grimm (Bìa Cứng)',
    content_category: 'Truyện đọc',
    content_ids: '8935212329736',
    content_type: 'product',
    value: 153750,
    currency: 'VND'
});

有了这个,你应该好好去。我希望这能解决你的问题。

注意:

React Native Bridge目前不支持数组。您可以在this中查看不支持数组的位置。