我正在为简单的游戏实施回合制游戏服务: https://developers.google.com/games/services/android/turnbasedMultiplayer
我正在使用basegameutils中的GameHelper
类。
我想保存一些不相关的数据(统计数据),所以我不想在玩家之间发送它。我在本地保存这些数据(sqlite),将其与TurnBasedMatch.getMatchId()
。
我需要知道的是如何查询谷歌游戏服务(我猜是通过GameHelper
),这是签名玩家的当前匹配,所以我可以删除旧的本地数据。
感谢。
答案 0 :(得分:0)
更好地看文档,我终于找到了解决方案。
如果您的活动来自BaseGameActivity
,则可以执行以下操作:
Games.TurnBasedMultiplayer.loadMatchesByStatus(getApiClient(),
TurnBasedMatch.MATCH_TURN_STATUS_COMPLETE,
TurnBasedMatch.MATCH_TURN_STATUS_MY_TURN,
TurnBasedMatch.MATCH_TURN_STATUS_THEIR_TURN)
.setResultCallback(deleteNotPresentMatches);
使用您自己的回叫,例如:
private ResultCallback<TurnBasedMultiplayer.LoadMatchesResult> deleteNotPresentMatches = new ResultCallback<TurnBasedMultiplayer.LoadMatchesResult>() {
public void onResult(TurnBasedMultiplayer.LoadMatchesResult r) {
//whatever you want, in my case delete local data for old matches
}
};