Hi Guys.
Im having a problem with my achievements.
The 5 minutes and 3 minutes achievements are not working.
Is there anything wrong with this code?
@Override
public void sendAchievement(final String achievement) {
try {
runOnUiThread(new Runnable() {
@Override
public void run() {
if (!isSignedIn()) {
signIn();
}
GoogleApiClient apiClient = _gameHelper.getApiClient();
if (achievement.equalsIgnoreCase("achievement_destroyed_10_asteroids")) {
Games.Achievements.unlock(apiClient, getString(R.string.achievement_destroyed_10_asteroids));
} else if (achievement.equalsIgnoreCase("achievement_destroyed_30_asteroids")) {
Games.Achievements.unlock(apiClient, getString(R.string.achievement_destroyed_10_asteroids));
Games.Achievements.unlock(apiClient, getString(R.string.achievement_destroyed_30_asteroids));
} else if (achievement.equalsIgnoreCase("achievement_destroyed_50_asteroids")) {
Games.Achievements.unlock(apiClient, getString(R.string.achievement_destroyed_10_asteroids));
Games.Achievements.unlock(apiClient, getString(R.string.achievement_destroyed_30_asteroids));
Games.Achievements.unlock(apiClient, getString(R.string.achievement_destroyed_50_asteroids));
}
if (achievement.equalsIgnoreCase("achievement_survive_the_asteroid_field_for_1_minute")) {
Games.Achievements.unlock(apiClient, getString(R.string.achievement_survive_the_asteroid_field_for_1_minute));
} else if (achievement.equalsIgnoreCase("achievement_survive_the_asteroid_field_for_3_minute")) {
Games.Achievements.unlock(apiClient, getString(R.string.achievement_survive_the_asteroid_field_for_1_minute));
Games.Achievements.unlock(apiClient, getString(R.string.achievement_survive_the_asteroid_field_for_3_minute));
} else if (achievement.equalsIgnoreCase("achievement_survive_the_asteroid_field_for_5_minute")) {
Games.Achievements.unlock(apiClient, getString(R.string.achievement_survive_the_asteroid_field_for_5_minute));
Games.Achievements.unlock(apiClient, getString(R.string.achievement_survive_the_asteroid_field_for_3_minute));
Games.Achievements.unlock(apiClient, getString(R.string.achievement_survive_the_asteroid_field_for_1_minute));
}
}
});
} catch (Exception ex) {
Gdx.app.log("MainActivity",
"Failed to unlock Achievement! " + ex.getLocalizedMessage());
ex.printStackTrace();
}
}
@Override
public void signIn() {
try {
runOnUiThread(new Runnable() {
@Override
public void run() {
_gameHelper.beginUserInitiatedSignIn();
}
});
} catch (Exception ex) {
Gdx.app.log("MainActivity",
"Log-in Failed " + ex.getLocalizedMessage());
ex.printStackTrace();
}
}