vue.js 如何获取Web应用程序的Firebase Analytics应用程序示例ID?

whlutmcx  于 2022-12-23  发布在  Vue.js
关注(0)|答案(1)|浏览(148)

我正在尝试通过Google Analytics 4 Measurement Protocol记录purchase事件,如果我读了这个文档,据说我必须有app_instance_id,这样我才能将数据从我们的后端发送到GA4服务器。
我们正在为Web应用程序使用Vue和Firebase Nuxt,但不幸的是,正如您从下图中看到的,我找不到获取app_instance_id的方法

那么如何在Firebaseforwebapp中获取app_instance_idforwebapp呢?它还不可用吗?请帮助

3pmvbmvn

3pmvbmvn1#

不幸的是,现在app_instance_id还不能在网上使用。2请在这里阅读来自Firebase Analytics repo maintainer的Github中的完整解释
但是不要担心,作为现在的一个变通方法,你必须使用字段client_id而不是app_instance_id。我如何得到client_id
你可以使用gtag方法得到client_id,如下所示:

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXX"></script>

window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());

gtag('config', 'G-XXXXXX');
gtag('get', 'G-XXXXXX', 'client_id', (client_id) => {
    // you get the client_id in here
    // the client id is something like this "1725321195.1671762625"
})

<script>

gtag是窗口上的全局变量,应在运行getAnalytics()initializeAnalytics()后随时可用
g-XXXXX是一个标记ID,您可以在www.example.com上获得它https://tagmanager.google.com/#/home

然后,制作如下所示的JSON负载,并将其发送到Google Analytics 4测量协议服务器

{
    "client_id": "1725321195.1671762625",  // <--- remove app_instance_id field and change it to client_id like this
    "user_id": "1",
    "timestamp_micros": "1671763057612000",
    "non_personalized_ads": false,
    "events": [
        {
            "name": "purchase",
            "params": {
                "items": [
                    {
                        "item_name": "yourProductName",
                        "price": 1500000,
                        "currency": "IDR"
                    },
                   
                ],
                "currency": "IDR",
                "transaction_id": "ID-RR661466",
                "value": 1500000
            }
        }
    ]
}

正如你从上面的JSON有效负载中看到的,没有app_instance_id字段,但是我使用了client_id字段。它工作正常,并且会出现在Firebase Analytics Realtime选项卡上

相关问题