GPGSのウェブサイトによると、
クライアント ライブラリを使用します。モバイル クライアント ライブラリでは、サービスへの呼び出しを減らすために多くの戦略が採用されています。たとえば、アチーブメントとリーダーボードのデータはキャッシュされるため、ユーザーは自分のアチーブメントを好きなだけ表示でき、サービスが複数の呼び出しを行う必要はありません。Android と iOS の両方のクライアント ライブラリは、あなたのスコアが最近送信されたスコアほど良くない場合、プレーヤーのスコアをサーバーに送信しないことを認識します。また、Android ライブラリは、レートが制限されていることを検出すると、頻繁に行われるアチーブメント インクリメント コールを自動的に結合します。
私が特に興味を持っているのは、「サービスが複数の呼び出しを行う必要なく実績を表示する」ことです。私が見る限り、これを行う最善の方法は、OnAchievementsLoadedListener を使用して achievementBuffer への参照を取得することです。
アチーブメントの状態が変更されたときにそのバッファーは更新されますか? また、そのバッファーをすぐに閉じなくても問題ありませんか? そうでない場合、OnAchievementsUpdatedListener はバッファを渡さないか、個々のアチーブメント参照さえも渡さないので、アチーブメントの更新されたコレクションを取得するにはどうすればよいですか?