S2S服务端上报Appsflyer和Firebase事件

S2S 服务端上报 Appsflyer 和 Firebase 事件

 


Appsflyer 事件上报

接口文档地址:Send Event

你可以在 appsflyer 注册一个测试 APP 用于测试,选择 Android 项目比较好创建。

必填参数及 Api Secret 获取

点击在页面左侧 “Configuration - App Settings”,进入到设置页面,在页面的 URL 可以看到 app_id,Android 应用的格式是字符串形式,而 IOS 项目是以 “id + 数字序列” 。

上图中 SDK authentication 即 API 的 Token,可以填写到文档右侧的 Header 处,测试接口请求。

另一个重要的必填参数是 advertising_id,它由客户端使用 SDK 首次启动时产生,用于唯一标示设备,需要是真实的,否则面板看不到事件,这里摘抄两段文档(#fetching-the-appsflyer-id)描述。

请确保您用来触发事件的AppsFlyer ID是真实的appsflyer_id,并且已存入应用中。这里的ID不是文档中提供的测试ID。

AppsFlyer平台会对由AppsFlyer SDK和API发送的移动应用事件进行归因和记录,因此您可以使用S2S API上报应用程序外部发生的事件(如用户在您的网页端完成的续订)。记录到的S2S事件会反映在AF后台的所有面板/报告中,包括控制面板,原始数据和分析报告。

进而可以了解到,服务器 S2S 上报事件是作为客户端 SDK 上报事件的补充,本身并不能独立使用,因为无法自己生成 advertising_id,需要客户端将起传到服务器。

另外,如遇到 Appsflyer <事件未显示在面板上> 的问题,可以参考这个文档核对。

Firebase 事件上报

接口文档地址:https://developers.google.com/analytics/devguides/collection/protocol/ga4/sending-events?client_type=firebase&hl=zh-cn

我是在 Google Analytics 注册的账号,创建的 Firebase 类型应用,在 Firebase 自己的网站创建效果应该是一样的。

必要参数获取

示例代码

const firebase_app_id = `1:1234567890:android:321abc456def7890`;
const api_secret = `<secret_value>`;

fetch(`https://www.google-analytics.com/mp/collect?firebase_app_id=${firebase_app_id}&api_secret=${api_secret}`, {
  method: "POST",
  body: JSON.stringify({
    app_instance_id: 'app_instance_id',
    events: [{
      name: 'tutorial_begin',
      params: {},
    }]
  })
});

在 GA v4 版本首页点击左侧 “管理 - 数据流”,能看到刚创建的测试应用。

点击应用可以查看详情,图中的 “FIREBASE 应用 ID” 即是 firebase_app_id

下滑到 “其它设置”,可以看到 “Measurement Protocol API 密钥”,进入后创建一个密钥,它就是 api_secret。(PS:我在 Firebase 网站没翻到设置 API Key 的地方)

另外一个必要参数是 client_id ,它在 GoogleService-Info.plist 文件中,最开始不知道它指的是哪个 ID,误以为是自定义的可选参数。

关于 Firebase 实时数据查看的问题

测试过程中,我在 firebase 实时面板查看到自定义事件,而在 GA v4 面板上没有看到实时数据。

实时事件需要 engagement_time_msec 和 session_id 两个参数,文档有说明,此处不再赘述。

关于 Firebase 的补充

文档预定义了一些事件名,最开始误以为 Firebase 不支持自定义事件,其实是可以的。

参考

### Firebase 服务器到服务器(S2S)事件上报实现指南 #### 使用场景与优势 服务器到服务器事件上报允许开发者通过后端服务直接向Firebase发送分析数据,这种方式适合批量处理或敏感数据分析需求[^1]。 #### 技术准备 为了成功实施S2S事件上报,需确保已安装并配置好Google Cloud SDK以及拥有有效的Firebase项目。此外,还需获取项目的Measurement IDAPI密钥用于身份验证。 #### 实现流程 ##### 创建HTTP请求 构建POST请求至`https://www.google-analytics.com/mp/collect?measurement_id=MEASUREMENT_ID&api_secret=API_SECRET`接口地址。其中`MEASUREMENT_ID`为Firebase Analytics中的测量ID;而`API_SECRET`则是创建于Firebase控制台的安全凭证字符串。 ```json { "client_id": "USER_UNIQUE_IDENTIFIER", "events": [ { "name": "event_name", "params": {} } ] } ``` 此JSON对象作为请求体的一部分提交给上述URL路径下的收集端点。注意替换模板内的占位符以匹配实际应用场景所需参数值。 ##### Python代码示例 下面是一个简单的Python脚本例子来展示如何发起这样的调用: ```python import requests import json def send_s2s_event(measurement_id, api_secret, client_id, event_name): url = f"https://www.google-analytics.com/mp/collect?measurement_id={measurement_id}&api_secret={api_secret}" payload = { 'client_id': client_id, 'events': [{ 'name': event_name, 'params': {} }] } headers = {'Content-Type': 'application/json'} response = requests.post(url, data=json.dumps(payload), headers=headers) return response.status_code == 204 ``` 该函数接受四个必需参数:`measurement_id`, `api_secret`, `client_id`(代表用户的唯一标识),还有想要记录的具体`event_name`名称。它会返回一个布尔值表示操作是否成功完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值