Google Play网络连接无效

时间:2017-08-31 11:36:29

标签: android api android-googleapiclient basegameutils

我正在尝试将我的应用程序连接到Google Play服务,以便添加游戏成就,但它无法连接。它给我回复了这条消息:

Failed to sign in. Please check your network connection and try again.

我重新安装了Google服务,并没有解决问题。 这是我的代码。

public class MainActivity extends AppCompatActivity implements
        GoogleApiClient.ConnectionCallbacks,
        GoogleApiClient.OnConnectionFailedListener
{
    public static  GoogleApiClient googleApiClient;
    private static int RC_SIGN_IN = 9001;
    private boolean mResolvingConnectionFailure = false;
    private boolean mAutoStartSignInflow = true;
    private boolean mSignInClicked = false;

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.activity_main);

        googleApiClient =  new GoogleApiClient.Builder(this)
            .addConnectionCallbacks(this)
            .addOnConnectionFailedListener(this)
            .addApi(Games.API).addScope(Games.SCOPE_GAMES)
            .build();
    }

    @Override
    protected void onStart() {
        try
        {
            super.onStart();
            googleApiClient.connect();
        }catch (Exception e)
        {
            e.printStackTrace();
        }
    }

    @Override
    protected void onStop() {
        try
        {
            super.onStop();
            googleApiClient.disconnect();
        }catch (Exception e)
        {
            e.printStackTrace();
        }
    }

    protected void onActivityResult(int requestCode, int resultCode,Intent intent)
    {
        if (requestCode == RC_SIGN_IN)
        {
            mSignInClicked = false;
            mResolvingConnectionFailure = false;
            if (resultCode == RESULT_OK)
            {
                googleApiClient.connect();
            }
            else
            {
                BaseGameUtils.showActivityResultError(this, requestCode, resultCode, R.string.error_conectar_google_juegos2);
            }
        }
    }


    @Override
    protected void onSaveInstanceState(Bundle outState)
    {
        super.onSaveInstanceState(outState);
        outState.putBoolean("STATE_RESOLVING_ERROR", false);
    }

    @Override
    public void onConnectionFailed(ConnectionResult connectionResult) 
    {
        if (mResolvingConnectionFailure)
        {
            return;
        }

        if (mSignInClicked || mAutoStartSignInflow)
        {
            mAutoStartSignInflow = false;
            mSignInClicked = false;
            mResolvingConnectionFailure = true;
            if (!BaseGameUtils.resolveConnectionFailure(this,googleApiClient, connectionResult,RC_SIGN_IN, R.string.error_conectar_google_juegos1))
            {
                mResolvingConnectionFailure = false;
            }
        }
    }
}

执行流程是下一个:

  1. 的onCreate()
  2. 在onStart()
  3. onConnectionFailed()
  4. 的onSaveInstanceState()
  5. 它要求我的Google帐户
  6. onActivityResult()
  7. 这里是onActivityResult()的“ELSE”。
  8. 当它失败时,它会显示我之前说过的消息。

    我的设备上有良好的互联网连接,我使用Android游戏安卓游戏没有问题。可能会发生什么?

    非常感谢你。

0 个答案:

没有答案