Google Play游戲服務(wù):Android 游戲中的玩家統(tǒng)計信息

來源: Google Developers
作者:Google Developers
時間:2020-12-04
18306
本指南將介紹如何通過Google Play游戲服務(wù)在游戲中使用Player Stats API。這些API可以在com.google.android.gms.games.stats和com.google.android.gms.games包中找到。

重要提示:根據(jù)此API的實驗結(jié)果,我們已停止填充以下端點:流失概率、消費概率、未來28天的預(yù)估總消費額以及高消費概率。現(xiàn)在,上述各個端點都會始終返回未設(shè)定值常量。玩家統(tǒng)計信息系統(tǒng)在沒有足夠的數(shù)據(jù)來計算某個特定端點的值時,也會使用同樣的值來說明這種情況。

利用Player Stats API,您可以針對某些玩家細分群體和玩家生命周期的不同階段量身設(shè)計游戲體驗。您可以根據(jù)玩家的游戲進度、消費情況和互動度,為每個玩家細分群體量身打造體驗。舉例來說,您可以使用此API采取積極的措施來鼓勵活躍度較低的玩家重新積極地玩游戲,例如您可以在玩家登錄時顯示并推銷新的游戲內(nèi)商品。

本指南將介紹如何通過Google Play游戲服務(wù)在游戲中使用Player Stats API。這些API可以在com.google.android.gms.games.stats和com.google.android.gms.games包中找到。

準備工作

開始使用Player Stats API之前,請做好以下準備:

·下載并查看代碼示例。

·熟悉質(zhì)量核對清單中所述的建議。

獲取玩家統(tǒng)計信息客戶端

要開始使用Player Stats API,您的游戲必須首先獲取PlayerStatsClient對象。為此,您可以調(diào)用Games.getPlayerStatsClient()方法并傳入當前玩家的活動和GoogleSignInAccount。要了解如何檢索玩家的帳號信息,請參閱在Android游戲中登錄。

注意:PlayerStatsClient類會利用Google Play服務(wù)的Task類來異步返回結(jié)果。要詳細了解如何使用任務(wù)來管理線程工作,請參閱Tasks API開發(fā)者指南。

玩家統(tǒng)計信息基礎(chǔ)知識

您可以使用Player Stats API檢索玩家在游戲內(nèi)的活動數(shù)據(jù)。您可以檢索的玩家數(shù)據(jù)類型包括:

·平均會話時長:玩家的平均會話時長,以分鐘為單位。每次的會話時長從玩家登錄Google Play游戲服務(wù)之時開始計算,到退出服務(wù)為止。

·距離上次玩游戲的天數(shù):距離玩家上一次玩游戲的大概天數(shù)。

·購物次數(shù):玩家在應(yīng)用內(nèi)購買商品的大概次數(shù)。

·會話次數(shù):玩家的大概會話次數(shù)。會話次數(shù)根據(jù)玩家登錄Google Play游戲服務(wù)的次數(shù)來計算。

·會話百分位:玩家的會話百分位近似值,以0到1之間(含二者)的小數(shù)值表示。此值反映與此游戲的玩家群中其他的玩家相比,當前玩家玩游戲的會話次數(shù)。數(shù)字越大,表示此玩家玩游戲的會話越多。

·消費百分位:玩家的消費百分位近似值,以0到1之間(含二者)的小數(shù)值表示。此值反映與此游戲的玩家群中其他的玩家相比,當前玩家已經(jīng)消費的金額。數(shù)字越大,表示此玩家的消費越多。

以下玩家數(shù)據(jù)類型已棄用,系統(tǒng)針對這些類型會始終返回未設(shè)定值常量:

·流失概率:對玩家是否會在接下來的一天流失進行的預(yù)測,以0(低流失概率)到1(高流失概率)之間(含二者)的小數(shù)值表示。流失是指玩家連續(xù)7天無活動。

·消費概率:玩家在此游戲中選擇消費的大概概率,以0(低消費概率)到1(高消費概率)之間(含二者)的小數(shù)值表示。

·未來28天的預(yù)估總消費額:預(yù)計未來28天玩家在此游戲中的大概總消費。

·高消費概率:未來28天玩家的消費金額處于此游戲玩家群消費水平的第95百分位或更高百分位的大概概率。此值以0(成為高消費玩家的概率低)到1(成為高消費玩家的概率高)之間(含二者)的小數(shù)值表示。

檢索玩家統(tǒng)計數(shù)據(jù)

要檢索當前已登錄玩家的玩家統(tǒng)計數(shù)據(jù),請按以下步驟操作:

1.調(diào)用PlayerStatsClient.loadPlayerStats()方法。

2.如果調(diào)用成功,Google Play游戲服務(wù)會返回Task對象,該對象會異步加載PlayerStats對象。使用此對象的方法來檢索應(yīng)用中已登錄玩家的活動數(shù)據(jù)。

示例如下:

public void checkPlayerStats(){

Games.getPlayerStatsClient(this,GoogleSignIn.getLastSignedInAccount(this))

.loadPlayerStats(true)

.addOnCompleteListener(new OnCompleteListener<AnnotatedData<PlayerStats>>(){

 Override

public void onComplete( NonNull Task<AnnotatedData<PlayerStats>>task){

if(task.isSuccessful()){

//Check for cached data.

if(task.getResult().isStale()){

Log.d(TAG,"using cached data");

}

PlayerStats stats=task.getResult().get();

if(stats!=null){

Log.d(TAG,"Player stats loaded");

if(stats.getDaysSinceLastPlayed()>7){

Log.d(TAG,"It's been longer than a week");

}

if(stats.getNumberOfSessions()>1000){

Log.d(TAG,"Veteran player");

}

if(stats.getChurnProbability()==1){

Log.d(TAG,"Player is at high risk of churn");

}

}

}else{

int status=CommonStatusCodes.DEVELOPER_ERROR;

if(task.getException()instanceof ApiException){

status=((ApiException)task.getException()).getStatusCode();

}

Log.d(TAG,"Failed to fetch Stats Data status:"

+status+":"+task.getException());

}

}

});

}

有關(guān)使用玩家統(tǒng)計數(shù)據(jù)的提示

利用Play Stats API,您可以根據(jù)玩家在游戲內(nèi)的互動情況和消費行為,輕松識別不同類型的玩家,然后采取相應(yīng)的策略提升玩家的游戲體驗。

下表列出了一些玩家細分群體示例以及建議的互動度提升策略:

微信圖片_20201204095344.png

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于Google Developers,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多