Firebase A/B 测试版本定位
Posted
技术标签:
【中文标题】Firebase A/B 测试版本定位【英文标题】:Firebase A/B Testing version targeting 【发布时间】:2020-09-27 09:27:54 【问题描述】:我尝试使用 Firebase A/B 测试运行 A/B 测试,但仅针对应用的特定版本。运行 5 天后,没有任何结果,也没有用户接触到该实验。
之后,我尝试运行相同的 A/B 测试,但没有版本限制,第二天就可以看到第一个结果。
所以我认为我定义版本限制的方式是错误的。我在远程配置中对其进行了测试,但是当我应用相同的版本限制时,远程配置返回了正确的值。以下是我在这两种情况下定义版本限制的方式:
应用的版本名称采用以下格式 X.Y.Z(例如 6.51.0、6.51.1)
有什么我遗漏的吗?如果针对特定版本,测试的启动速度会明显变慢吗?
【问题讨论】:
您能分享您的 A/B 测试配置吗?您是否使用任何其他定位,例如激活事件等? @michalbrz 我的 A/B 测试配置非常简单。我唯一的目标是applicationId
和版本。没有激活事件。如果我从定位中删除版本,A/B 测试就可以工作,所以它似乎必须与版本相关。但由于相同的版本定位适用于远程配置,它似乎是 Firebase A/B 测试中的某种错误。
您是否上传了要在 firebase 中测试的版本????
@ShahriyarAghajani 我不确定我是否理解这个问题。我定位的一些版本已经上传到 PlayStore,还有一些将来会上传,因为我无法在启动时修改 A/B 测试。
根据我对 firebase/remote 配置的经验,版本很棘手,您可以尝试使用“regex”而不是“contains”,在您的情况下将类似于 6\.[5-6][5-6]
另一个提示,您可以从您的测试设备中擦除您应用的数据,以加快将数据收集到 Firebase 控制台的速度,因此您无需等待一天。
【参考方案1】:
这应该可行。我已经试过很多次了。确保根据您的应用配置定位正确的值。版本定位条件...
对于 android 应用,您应该定位 “versionName”,而不是“versionCode”。 对于 ios 应用,您应该定位 “CFBundleShortVersionString”,而不是“CFBundleVersion”。此外,您应该在控制台上输入准确的数字。例如,如果 versionName 或 CFBundleShortVersionString 是 1.0.0,那么您应该输入 1.0.0 而不仅仅是 1.0。
【讨论】:
以上是关于Firebase A/B 测试版本定位的主要内容,如果未能解决你的问题,请参考以下文章