Недавно я получил письмо от Google, в котором говорится:
7 марта 2019 г. все API Google+ и вход в Google+ будут полностью отключены. Это будет постепенное завершение работы, которое начнется в конце января, а вызовы этих API начнут периодически выходить из строя уже 28 января 2019 года.
В следующей части письма:
XXX GP (api-project-123123123123) плюс v1 plus.people.get
Я использую com.google.android.gms.common.api.GoogleApiClient
и обратные вызовы соединения для обеспечения функциональности входа.
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(Games.API).addScope(Games.SCOPE_GAMES)
.build();
Для таблиц лидеров и достижений:
startActivityForResult(Games.Achievements.getAchievementsIntent(mGoogleApiClient), 0);
startActivityForResult(Games.Leaderboards.getLeaderboardIntent(mGoogleApiClient,
"leaderboardX"), 0);
Мое приложение не зависит от устаревших Scopes здесь: https://developers.google.com/+/mobile/android/api-deprecation.
В новых примерах сервисов Google Play в репозитории Github: https://github.com/playgameservices/android-basic-samples
есть новые реализации входа в Google и использование функций игры, как вы можете видеть в следующих фрагментах кода.
Для входа:
mGoogleSignInClient = GoogleSignIn.getClient(this,
new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN).build());
mGoogleSignInClient.silentSignIn().addOnCompleteListener(this,
new OnCompleteListener<GoogleSignInAccount>() {
@Override
public void onComplete(@NonNull Task<GoogleSignInAccount> task) {
if (task.isSuccessful()) {
Log.d(TAG, "signInSilently(): success");
onConnected(task.getResult());
} else {
Log.d(TAG, "signInSilently(): failure", task.getException());
onDisconnected();
}
}
});
Для игровых возможностей:
@Override
public void onShowAchievementsRequested() {
mAchievementsClient.getAchievementsIntent()
.addOnSuccessListener(new OnSuccessListener<Intent>() {
@Override
public void onSuccess(Intent intent) {
startActivityForResult(intent, RC_UNUSED);
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
handleException(e, getString(R.string.achievements_exception));
}
});
}
@Override
public void onShowLeaderboardsRequested() {
mLeaderboardsClient.getAllLeaderboardsIntent()
.addOnSuccessListener(new OnSuccessListener<Intent>() {
@Override
public void onSuccess(Intent intent) {
startActivityForResult(intent, RC_UNUSED);
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
handleException(e, getString(R.string.leaderboards_exception));
}
});
}
Я немного сбит с толку, нужно ли мне внедрять новые API входа и лидеров / достижений?
Нужно ли мне вносить изменения, чтобы на меня не влияли API Google+ и прекращение входа в Google+?
https://console.cloud.google.com/apis/api/plus.googleapis.com/metrics?project=mygoogleprojectname
, заменивmygoogleprojectname
тем проектом, который, по утверждениям Google, обнаружил использование API. - person jess   schedule 23.01.2019