我已经使用各自的方法集成了谷歌和Facebook注册.但是在成功签名之后,我想打开不同的活动,同样用户可以进行各种不同的活动.我使用了操作栏,我可以选择从用户登录的任一帐户中退出.如果我处于不同的活动,那么我可以在主要活动中退出用户.我得到一个例外,我无法将apiclient引用(对于谷歌)和会话引用(对于Facebook)传递给另一个活动.请帮忙.
提前致谢.
提前致谢.
解决方法
从谷歌退出:
只需在您的新活动中添加此项,您希望Google的注销按钮位于此处:
- @Override
- protected void onStart() {
- GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
- .requestEmail()
- .build();
- mGoogleApiClient = new GoogleApiClient.Builder(this)
- .addApi(Auth.GOOGLE_SIGN_IN_API,gso)
- .build();
- mGoogleApiClient.connect();
- super.onStart();
- }
接下来你可以在按钮上设置setOnClickListener:
- signout.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Auth.GoogleSignInApi.signOut(mGoogleApiClient).setResultCallback(
- new ResultCallback<Status>() {
- @Override
- public void onResult(Status status) {
- // ...
- Toast.makeText(getApplicationContext(),"Logged Out",Toast.LENGTH_SHORT).show();
- Intent i=new Intent(getApplicationContext(),MainActivity.class);
- startActivity(i);
- }
- });
- }
- });