激活事件和标志更新的频率,以进行准确的AB测试

时间:2019-02-27 12:15:01

标签: firebase firebase-remote-config firebase-ab-testing

我正在尝试进行实验,以更改应用程序第3步中某个元素的行为。为了使数据准确,我计划将激活事件作为完成第二步的事件。现在,在应用程序首次启动时会获取firebase远程配置值,因此,如果我将步骤2完成设置为激活事件,则应用程序将无法获取要在步骤3上使用的标志的更新的远程配置值。如果我每次使用标志都获取并激活标志值,则60分钟内将超过5次限制。解决此问题的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

我一直在尝试执行与您几乎相同的过程,并且我意识到激活事件可以在第3步中进行调用而无需获取。 我正在执行以下操作:

第1步(当我的应用启动时)

获取变量并在有任何更新时激活(.fetchAndActivate())

第二步

只需致电您的激活事件

Step3

获取决定您的变体或对照组的变量


我一直在测试它是否确实有效(这是棘手的部分)

  1. 删除广告ID
  2. 删除旧应用(或者您也可以调用FirebaseInstanceId.getInstance()。deleteInstanceId())以获取新的Firebase令牌
  3. 有了新的广告ID和Firebase令牌后,您就像FB的新用户一样,因此将获得新的变体或组控件。

重要要点:

  • FB为您提供的变体已针对令牌进行了固定(这在Prod环境中很有意义),因此,当您获得其中一种变体时,除非您重置令牌(除非在需要时执行此操作),否则它将始终相同。您正在测试)
  • 您提供给FB的时间是在本地控制提取系统
  • 激活方法仅向FB指示该用户是否输入实验,但是您已经为该用户分配了变体/控制组。

答案 1 :(得分:0)

因此,ABT的激活事件只会使触发它的用户开始在实验中进行计数,而在触发时不会激活实际的配置值。您应该能够在应用启动时获取并激活,然后通过在第2步使用激活事件,可以使用户进入实验并进行第3步的行为更改。

本文讨论了RC激活 https://firebase.googleblog.com/2017/01/firebase-remote-config-loading.html

这里的文档更详细地介绍了ABT激活事件 https://firebase.google.com/docs/ab-testing/abtest-config