Firebase A/B测试结合Remote Config时离线用户的配置下发与数据统计问题
Firebase Remote Config A/B测试离线场景问题解答
1. 离线状态下能否获取测试变体
分两种场景对应不同结果:
- 若用户此前已成功联网拉取过
Remote Config配置:客户端本地会永久缓存已分配的测试变体参数,离线状态下可直接读取缓存内容,和用户此前分配到的测试组完全一致,不会出现变体错乱的情况,只要用户不清除应用数据/缓存,该分配结果会一直保留。 - 若用户为首次安装打开应用且从未成功联网拉取过配置:离线状态下无法获取任何线上测试变体,只会加载你在客户端预设的默认参数,该类用户不会被计入A/B测试的分流样本。
2. 离线用户行为的Analytics记录逻辑
Firebase Analytics默认支持离线事件缓存:用户离线时产生的所有行为事件会先存储在本地SQLite数据库中,默认缓存上限为10MB,可存储数万条普通行为事件,不会立即丢失。- 当用户设备恢复联网后,所有本地缓存的离线事件会批量上报到Firebase服务器,事件的归因逻辑和在线事件完全一致,会正常关联对应用户已分配的A/B测试组,不会影响测试数据的统计准确性。
- 仅两种极端情况会出现离线事件丢失:一是用户长期不联网直到本地缓存占满,新产生的事件会覆盖最早的缓存事件;二是用户卸载应用或清除应用数据,未上报的缓存事件会永久丢失。
- 离线上报的延迟事件只要在A/B测试的统计回溯窗口期内(测试结束后默认保留3-7天的事件接收窗口),都会被正常计入测试报告。
内容的提问来源于stack exchange,提问作者Max Tromp
相关产品推荐
相关产品推荐

