5

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

4

2 回答 2

8

因此,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

于 2019-03-19T23:31:42.910 回答
1

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

Step1(当我的应用程序启动时)

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

第2步

只需调用您的激活事件

第三步

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


我一直在用什么来测试这真的有效(这是棘手的部分)

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

要点:

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