최근에 내 앱에서 Google 플레이 서비스 리더 보드를 구현했지만 점수를 제출하지 않은 것으로 나타났습니다.Google 리더 보드 - 점수를 제출할 수 없습니다.
MainActivity의 GoogleApiClient 인스턴스가 있으며 다른 액티비티에서 정적으로 선언되었습니다. 리더 보드를 방문하는 코드는 MainActivity에 있습니다.
public static GoogleApiClient apiClient = apiClient = new GoogleApiClient.Builder(this)
.addApi(Games.API)
.addScope(Games.SCOPE_GAMES)
.enableAutoManage(this, new GoogleApiClient.OnConnectionFailedListener() {
@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
Toast.makeText(MainActivity.this, "Failed to connect to google play", Toast.LENGTH_LONG).show();
}
})
.build();
점수를 제출하는 코드 (한번의 테스트에서 onCreate) 제 활성 onActivityResult를 호출되는 메소드의 내부이다. 그것으로 onActivity 결과에의하므로, googleApiClient는 즉시 연결 실패의 결과는 내가 직접 업데이트 할 경우, 그래서 나는이 같은 짓되지 않습니다
MainActivity.apiClient.registerConnectionCallbacks(new GoogleApiClient.ConnectionCallbacks() {
@Override
public void onConnected(@Nullable Bundle bundle) {
PendingResult r = Games.Leaderboards.submitScoreImmediate(MainActivity.apiClient,
getString(R.string.leaderboard_most_stars),
totalStars);
ResultCallback callback = new ResultCallback()
{
@Override
public void onResult(@NonNull Result result) {}
};
r.setResultCallback(callback);
}
@Override
public void onConnectionSuspended(int i) {
}
});
을하지만 어떤 이유로 점수를 제출하지 못합니다. 리더 보드가로드되고 점수가 표시되지 않습니다.
그리고 wierd 건, 테스트 계정의 에뮬레이터에서 제대로 작동합니다.
누구든지 실수를 지적하는 데 도움이 될 수 있습니까?
결과를 확인하고 단서가 있는지 확인하려고 했습니까? – Cata
에뮬레이터에서 작동합니다. 로그와 토스트를 확인했는데 예상대로입니다. 어떤 이유로 실제 장치에서 작동하지 않습니다. – Abhijeet