2017-12-29 6 views
0

GoogleのサインインアクティビティをGoogleで開くことはできません。それは私のアプリケーションコードです。Googleによるサインインアクティビティーを開けません

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) 
        .requestEmail() 
        .build(); 

      mGoogleSignInClient = GoogleSignIn.getClient(this, gso); 
    SignInButton signInButton = findViewById(R.id.sign_in_button); 
      signInButton.setOnClickListener(view -> signIn()); 

private void signIn() { 
     Intent signInIntent = mGoogleSignInClient.getSignInIntent(); 
     startActivityForResult(signInIntent, RC_SIGN_IN); 
    } 

    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 

     if (requestCode == RC_SIGN_IN) { 
      Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data); 
      handleSignInResult(task); 
     } 
    } 

    private void handleSignInResult(Task<GoogleSignInAccount> completedTask) { 
     try { 
      account = completedTask.getResult(ApiException.class); 
     } catch (ApiException e) { 
      Log.w("Err", "signInResult:failed code=" + e.getStatusCode()); 
     } 
    } 

私は901、1のような異なるRC_SIGN_INコードで試しましたが、解決策はありませんでした。

+0

で、Googleの記号の後に移動したい活動に言及しますか? –

+0

私は例外を取得しませんでした..アクティビティが表示され始め、その後消えます。 – user8549135

+0

私はそれをデバッグし、まだ例外はありません – user8549135

答えて

0

あなたにコードを使用する必要があり、

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) 
     .requestEmail() 
     .build(); 

mGoogleApiClient = new GoogleApiClient.Builder(getActivity()) 
     .addApi(Auth.GOOGLE_SIGN_IN_API,gso) 
     .build(); 

signInButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient); 
       startActivityForResult(signInIntent, RC_SIGN_IN); 
      } 
     }); 

onActivityResult、

@Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 

     // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...); 
     if (requestCode == RC_SIGN_IN) { 
      GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data); 
      handleSignInResult(result); 
     } 
    } 

handleSigninResult、

private void handleSignInResult(GoogleSignInResult result) { 
     Log.d(TAG, "handleSignInResult:" + result.isSuccess()); 
     if (result.isSuccess()) { 
      // Signed in successfolly, show authenticated UI. 
     } 
    } 
+0

、あなたはそれがそのリンクのタイトルである多分それは、青色のテキストで、うまくいけば – user8549135

+0

を伝えることができます – user8549135

0

xml形式でレイアウトを作るこのリンクを試してみて、クリックするボタンを定義しますそれはGoogleのサインインのためのものです。あなたの活動にボタンで記号を作成し、XMLでlogin.java活動やボタンのデザインを使用したXMLとリンク

Google sign in using firebase working on emulator but not on real device? ランチャーとして、あるいは起動時にAndroidManifest.xmlでこれらの活動をこの活動に言及。 はまた、あなたは例外が何であるか確認しまし

+0

クリックして問題となっている私にrc_sign_in値 –

関連する問題