【问题标题】:What is the best choice to implement new screen for A/B testing为 A/B 测试实施新屏幕的最佳选择是什么
【发布时间】:2019-03-20 06:24:57
【问题描述】:
说明:
我有一个注册屏幕。
为了更容易输入信息,我打算通过减少输入字段来更新这个屏幕。我还想通过 A/B 测试来收集用户反馈。
因此,我必须保留当前的注册屏幕并制作新的。
我想当前的注册屏幕有 10 个输入字段。
我将制作一个新的,有 4 个输入字段 + 样式稍作改动。
令人困惑:
所以,我想知道最好的实现方式:
- 我应该使用相同的 RegisterActivity 并只使用单独的 XML 布局吗?
- 或者我将创建一个新的 Activity,如 RenewalRegisterActivity(当然会创建新的 XML 布局?
项目结构如下:
案例一:
RegisterActivity.kt
regsiter_activity.xml
renewal_register_activity.xml
案例2:
RegsiterActivity.kt
register_activity.xml
RenewalRegsiterActivity.kt
renewal_register_activity.xml
【问题讨论】:
标签:
android
design-patterns
android-activity
kotlin
firebase-ab-testing
【解决方案1】:
使用相同的xml文件。
但如果您打算进行一些验证。例如
abtn= findViewById(R.id.abtn);
abtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Main.this, a.class);
intent.putExtra("xmltype",1);
startActivity(intent);
}
});
bBTN= findViewById(R.id.bBTN);
bBTN.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Main.this, a.class);
intent.putExtra("xmltype",2);
startActivity(intent);
在你一个.class:
Bundle extras = getIntent().getExtras();
if(extras != null){
xmltype= extras.getInt("xmltype",-1);
System.out.println("ticketType::::"+xmltype);
}
if(xmltype== 1){
//show all fields
//hide all feilds that dont needed by using Fields.SetVisibility(View.GOne)
}else{
//show all fields
//hide all feilds that dont needed by using Fields.SetVisibility(View.GOne)
}