我有一款Android游戏,每当玩家解锁成就时,我都会发出声音, 但我似乎无法找到一种方法来了解用户何时解锁成就,因为我的大部分成就都是增量的,我无法在客户端进行编码,唯一的方法是在调用时调用Google API会显示成就框,但我无法在文档中找到任何内容...我发现的只有:Integrating Google Play services achievements and android notifications
@Override
public void onAchievementUnlocked(final String id)
{
//
}
但我不知道如何实现该方法或如何调用该方法而我在Google上没有运气
答案 0 :(得分:1)
使用以下代码:
Games.Achievements.incrementImmediate(GoogleApiClient apiClient, String id, int numSteps).setResultCallback(new ResultCallback<Achievements.UpdateAchievementResult>() {
@Override
public void onResult(UpdateAchievementResult result) {
if (result.getStatus().getStatusCode() == GamesStatusCodes.STATUS_ACHIEVEMENT_UNLOCKED) {
// play your sound. achievement was unlocked
}
}
});
这会使你的成就增加你想要的步数,一旦完成,它将return some of these codes.如果代码是GamesStatusCodes.STATUS_ACHIEVEMENT_UNLOCKED
,那么这意味着增量解锁了成就,你可以发挥你的声音。