華為 AGC - 遠端配置類 AB 測試實戰指導
華為 AppGallery Connect 服務,提供有AB測試功能,可以已經正常使用的 Push 通知或者遠端配置,建立對照試驗測試,用於檢查對比不同方案的區別,可以幫助產品或者運營的同事,更加資料充足的選擇最佳方案。
下面是在華為 AGC 平臺,從零開始使用遠端配置類AB測試的實戰指導教程。如有不對的地方,還請多多指導。
一、前置要求:整合遠端配置
首先,使用遠端配置的AB測試,前置要求是在應用中已經正確整合遠端配置的SDK,並且在應用內已經預留好進行遠端配置的引數。
下面是最簡單的從零開始整合遠端配置SDK並且預留引數的相關步驟
1、在專案級的 build.gradle 中新增 Maven 倉庫地址:
buildscript {
repositories {
maven { url 'https://developer.huawei.com/repo/'}
}
dependencies {
classpath 'com.huawei.agconnect:agcp:1.5.2.300'
}
}
allprojects {
repositories {
maven { url 'https://developer.huawei.com/repo/'}
}
}
2、新增 AGCP 外掛與 agc 配置檔案
在應用級build.gradle新增如下agcp外掛
apply plugin: 'com.huawei.agconnect'
3、在 AGC 控制檯的 我的專案 – 專案設定 下,下載 agconnect-services.json 檔案,將其下載到專案的 app 路徑下
4、在應用級 build.gradle 新增 SDK 依賴
dependencies {
implementation 'com.huawei.agconnect:agconnect-remoteconfig:1.5.2.300'
implementation 'com.huawei.hms:hianalytics:5.3.1.300'
}
5、程式碼預留遠端配置引數
如下為簡單的Android程式碼,我只是在一個完全新建的Android工程中,添加了一個獲取遠端配置的按鈕。
在該按鈕中設定對應的引數預設值,並且通過fetch獲取雲側的遠端配置引數
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
HiAnalyticsTools.enableLog();
HiAnalyticsInstance instance = HiAnalytics.getInstance(this);
getAAID();
findViewById(R.id.button).setOnClickListener(view -> {
getRemoteCongfig();
});
}
public void getRemoteCongfig() {
// 獲取遠端配置例項
config = AGConnectConfig.getInstance();
Map<String, Object> defaultValue = new HashMap<>();
// 新增鍵值對
defaultValue.put("welcome_string", "this is a default welcome_slogan");
config.applyDefault(defaultValue);
config.fetch(10).addOnSuccessListener(configValues -> {
config.apply(configValues);
String newSlogan = config.getValueAsString("welcome_string");
Log.i(TAG, "RemoteConfig Success: " + newSlogan);
}).addOnFailureListener(e1 -> Log.e(TAG, "getRemoteConfig failed: " + e1.getMessage())
);
}
二、前置要求:整合華為分析
生成AB測試的報告,需要使用華為分析服務,因此需要在程式碼中整合華為分析SDK,由於AB測試事件屬於華為分析的自動採集事件,因此華為分析的整合步驟非常簡單:
1、在應用級build.gradle新增SDK依賴
dependencies {
implementation 'com.huawei.hms:hianalytics:5.3.1.300'
}
2、在OnCreate中初始化華為分析
HiAnalyticsTools.enableLog();
HiAnalyticsInstance instance = HiAnalytics.getInstance(this);
三、在AGC介面建立遠端配置
在AGC介面,選擇我的專案,在專案上選擇 遠端配置 – 選擇 新增配置專案;
https://developer.huawei.com/consumer/cn/service/josp/agc/index.html#/
需要注意的是,配置項名稱必須和程式碼中預留的引數名稱保持一致。外掛儲存好以後,返回上一個層級,點選 釋出,釋出該配置項。
四、建立遠端配置類AB測試。
在AGC介面,選擇我的專案,在專案上選擇AB測試 – 選擇 建立遠端配置實驗;
https://developer.huawei.com/consumer/cn/service/josp/agc/index.html#/
按要求隨便建立一個測試,注意此時最好目標使用者的比例調高一些,啟用事件建議不選。
此處我為了方便檢視測試效果,過濾語言條件選擇語言,並且全選了所有語言,大家自己測試的時候可以按需選擇哈。
配置原始組和實驗組的時候,可以下拉選擇對應的配置項。
最後一步的選擇跟蹤指標,我這裡就選擇一個最簡單的 點選率。 四個步驟都配置完成以後,即可點選儲存
五、執行實驗,在App中執行fetch獲取
1、在操作欄,選擇 啟動,啟動實驗 。
2、執行App,並且點選按鈕獲取雲端配置。
相應的日誌如下:
需要注意的是:
建立好的AB測試,可以通過最右側的操作,選擇 調測 來進行實驗效果的調測。調測所使用的aaid的獲取如下
public void getAAID() {
Task<AAIDResult> idResult = HmsInstanceId.getInstance(this).getAAID();
idResult.addOnSuccessListener(new OnSuccessListener<AAIDResult>() {
@Override
public void onSuccess(AAIDResult aaidResult) {
// 獲取AAID方法成功
String aaid = aaidResult.getId();
Log.d(TAG, "getAAID successfully, aaid is " + aaid );
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception myException) {
// 獲取AAID失敗
Log.d(TAG, "getAAID failed, catch exceptio : " + myException);
}
});
}
六、檢視實驗報告
對於已執行的實驗,可以在右側操作欄點選 報告 檢視相應的AB測試資料報告,介面參考如下:
參考文件連結:
華為AGC AB測試操作文件
華為遠端配置 SDK開發指南:
華為分析服務SDK 開發指南: