Android 游戏中的玩家统计信息,android游戏开发详解Android 游戏中的玩家统计信息重要提示:根据此API的实验结果,我们已停止填充以下端点:流失概率、消费概率、未来28天的预估总消费额以及高消费概率。现在,上述各个端点都会始终返回未设定值常量。玩家统计信息系统在没有足够的数据来计算某个特定端点的值时,......
重要提示:根据此API的实验结果,我们已停止填充以下端点:流失概率、消费概率、未来28天的预估总消费额以及高消费概率。现在,上述各个端点都会始终返回未设定值常量。玩家统计信息系统在没有足够的数据来计算某个特定端点的值时,也会使用同样的值来说明这种情况。
利用Player Stats API,您可以针对某些玩家细分群体和玩家生命周期的不同阶段量身设计游戏体验。您可以根据玩家的游戏进度、消费情况和互动度,为每个玩家细分群体量身打造体验。举例来说,您可以使用此API采取积极的措施来鼓励活跃度较低的玩家重新积极地玩游戏,例如您可以在玩家登录时显示并推销新的游戏内商品。
本指南将介绍如何通过Google Play游戏服务在游戏中使用Player Stats API。这些API可以在com.google.android.gms.games.stats和com.google.android.gms.games包中找到。
准备工作
开始使用Player Stats API之前,请做好以下准备:
·下载并查看代码示例。
·熟悉质量核对清单中所述的建议。
获取玩家统计信息客户端
要开始使用Player Stats API,您的游戏必须首先获取PlayerStatsClient对象。为此,您可以调用Games.getPlayerStatsClient()方法并传入当前玩家的活动和GoogleSignInAccount。要了解如何检索玩家的帐号信息,请参阅在Android游戏中登录。
注意:PlayerStatsClient类会利用Google Play服务的Task类来异步返回结果。要详细了解如何使用任务来管理线程工作,请参阅Tasks API开发者指南。
玩家统计信息基础知识
您可以使用Player Stats API检索玩家在游戏内的活动数据。您可以检索的玩家数据类型包括:
·平均会话时长:玩家的平均会话时长,以分钟为单位。每次的会话时长从玩家登录Google Play游戏服务之时开始计算,到退出服务为止。
·距离上次玩游戏的天数:距离玩家上一次玩游戏的大概天数。
·购物次数:玩家在应用内购买商品的大概次数。
·会话次数:玩家的大概会话次数。会话次数根据玩家登录Google Play游戏服务的次数来计算。
·会话百分位:玩家的会话百分位近似值,以0到1之间(含二者)的小数值表示。此值反映与此游戏的玩家群中其他的玩家相比,当前玩家玩游戏的会话次数。数字越大,表示此玩家玩游戏的会话越多。
·消费百分位:玩家的消费百分位近似值,以0到1之间(含二者)的小数值表示。此值反映与此游戏的玩家群中其他的玩家相比,当前玩家已经消费的金额。数字越大,表示此玩家的消费越多。
以下玩家数据类型已弃用,系统针对这些类型会始终返回未设定值常量:
·流失概率:对玩家是否会在接下来的一天流失进行的预测,以0(低流失概率)到1(高流失概率)之间(含二者)的小数值表示。流失是指玩家连续7天无活动。
·消费概率:玩家在此游戏中选择消费的大概概率,以0(低消费概率)到1(高消费概率)之间(含二者)的小数值表示。
·未来28天的预估总消费额:预计未来28天玩家在此游戏中的大概总消费。
·高消费概率:未来28天玩家的消费金额处于此游戏玩家群消费水平的第95百分位或更高百分位的大概概率。此值以0(成为高消费玩家的概率低)到1(成为高消费玩家的概率高)之间(含二者)的小数值表示。
检索玩家统计数据
要检索当前已登录玩家的玩家统计数据,请按以下步骤操作:
1.调用PlayerStatsClient.loadPlayerStats()方法。
2.如果调用成功,Google Play游戏服务会返回Task对象,该对象会异步加载PlayerStats对象。使用此对象的方法来检索应用中已登录玩家的活动数据。
示例如下:
public void checkPlayerStats(){
Games.getPlayerStatsClient(this,GoogleSignIn.getLastSignedInAccount(this))
.loadPlayerStats(true)
.addOnCompleteListener(new OnCompleteListenerlt;AnnotatedDatalt;PlayerStatsgt;gt;(){
Override
public void onComplete( NonNull Tasklt;AnnotatedDatalt;PlayerStatsgt;gt;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()gt;7){
Log.d(TAG,Its been longer than a week);
}
if(stats.getNumberOfSessions()gt;1000){
Log.d(TAG,Veteran player);
}
if(stats.getChurnProbability()==1){
Log.d(TAG,Player is at high risk of churn);
}
}
}else{
int status=CommonStatusCodes.DEVELOPERERROR;
if(task.getException()instanceof ApiException){
status=((ApiException)task.getException()).getStatusCode();
}
Log.d(TAG,Failed to fetch Stats Data status:
+status+:+task.getException());
}
}
});
}
有关使用玩家统计数据的提示
利用Play Stats API,您可以根据玩家在游戏内的互动情况和消费行为,轻松识别不同类型的玩家,然后采取相应的策略提升玩家的游戏体验。
下表列出了一些玩家细分群体示例以及建议的互动度提升策略:
特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部