使用Google+登录按钮启动新活动

时间:2014-12-18 10:31:26

标签: android google-plus

如何使用Google plus登录按钮开始新活动?

我在activity_main.xml文件中有这个:

 <com.google.android.gms.common.SignInButton
     android:id="@+id/btn_sign_in"
       android:onClick="launchGooglePlusSignIn"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_alignParentLeft="true"
     >

 </com.google.android.gms.common.SignInButton>

 <Button
     android:id="@+id/button1"
     android:onClick="launchGooglePlusSignIn"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_above="@+id/btn_sign_in"
     android:layout_alignParentLeft="true"
     android:layout_alignParentRight="true"
     android:text="Button" />

在我的MainActivity中,我有这个:

 public void launchGooglePlusSignIn(View view) { //Must have a view as the ONLY parameter.This will be the view that was clicked
    Intent intent = new Intent(this, GooglePlusHandlerActivity.class);
    startActivity(intent);
}

当我运行应用程序并点击Google按钮时,没有任何反应,但是当我点击其他按钮时,(正如预期的那样)将被带到新活动。我真的需要处理Google plus登录,注销,访问撤销等在另一项活动中,如何使用Google按钮启动活动?

2 个答案:

答案 0 :(得分:0)

关注google plus登录的this教程。您将找到一个名为

的方法

public void onConnected(Bundle arg0){} 。 在该方法中编写您的意图代码。它将起作用。

答案 1 :(得分:0)

this tutorial的帮助下,我能够解决这个问题。

我需要初始化按钮,然后在我的MainActivity中设置onClickListener。我的MainActivity现在看起来像这样:

public class MainActivity extends Activity implements OnClickListener{

private SignInButton signInButton;
private Button otherButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    signInButton = (SignInButton)findViewById(R.id.btn_sign_in);
      signInButton.setOnClickListener(this);
    otherButton = (Button)findViewById(R.id.button1);
      otherButton.setOnClickListener(this);

}


@Override
public void onClick(View v) {

    switch(v.getId()) {

    case R.id.button1:
        //Toast.makeText(this, "Button CLicked", Toast.LENGTH_SHORT).show();
        Intent ordinaryButtonClickedIntent = new Intent(this, GooglePlusHandlerActivity.class);
        startActivity(ordinaryButtonClickedIntent);
        break;
    case R.id.btn_sign_in:
        //Toast.makeText(this, "Button CLicked", Toast.LENGTH_SHORT).show();
        Intent GPlusButtonClickedIntent = new Intent(this, GooglePlusHandlerActivity.class);
        startActivity(GPlusButtonClickedIntent);
        break;

    }
}

我的activity_main.xml文件中的按钮中不再需要这些行:

android:onClick="launchGooglePlusSignIn"