2015-10-07 73 views
0

我正在制作一个Android应用程序,用户可以从中分享谷歌加我们的应用程序的意见。第一次,当我点击共享按钮时,它要求输入用户的用户名和密码,输入共享后成功执行然后当我再次点击共享按钮时它没有要求用户名和密码,应用程序只需登录使用旧用户登录详细信息。这是一个应用程序,将被来自单个设备的许多用户使用。所以每当一个新用户使用我的应用程序时,他/她应该被重定向到一个新的登录页面。从谷歌加注销后从Android应用程序共享

分享我用下面的代码: -

  shareButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      // Launch the Google+ share dialog with attribution to your app. 
      Intent shareIntent = new PlusShare.Builder(HomeActivity.this) 
        .setType("text/plain") 
        .setText("Welcome to the Google+ platform.") 
        .setContentUrl(Uri.parse("https://developers.google.com/+/")) 
        .getIntent(); 

      startActivityForResult(shareIntent, 0); 
     } 
    }); 

我用下面的代码来实现的计划,但似乎问题仍然存在。

 if (mGoogleApiClient.isConnected()) { 
     Plus.AccountApi.clearDefaultAccount(mGoogleApiClient); 
     Plus.AccountApi.revokeAccessAndDisconnect(mGoogleApiClient) 
       .setResultCallback(new ResultCallback<Status>() { 
        @Override 
        public void onResult(Status status) { 
         mGoogleApiClient.disconnect(); 
        } 
       }); 
    } 

    private void revokeGplusAccess() { 
    if (mGoogleApiClient.isConnected()) { 
     Plus.AccountApi.clearDefaultAccount(mGoogleApiClient); 
     Plus.AccountApi.revokeAccessAndDisconnect(mGoogleApiClient) 
       .setResultCallback(new ResultCallback<Status>() { 
        @Override 
        public void onResult(Status arg0) { 
         Log.e(TAG, "User access revoked!"); 
         mGoogleApiClient.connect(); 
         updateUI(false); 
        } 

       }); 
    } 
} 

是他们的一种方法,而不是谷歌整合从android应用程序共享?
任何帮助表示赞赏

问候
阿贾伊

回答

0

您可以使用此:

private void signOutFromGplus() { 
     if (mGoogleApiClient.isConnected()) { 
      Plus.AccountApi.clearDefaultAccount(mGoogleApiClient); 
      mGoogleApiClient.disconnect(); 
      mGoogleApiClient.connect(); 
      updateUI(false); 
     } 
    } 

参考this更多的详细信息。

+0

我已经更新了我的代码,并使用过之前的链接。分享后,用户应该从谷歌加注销,当其他用户点击共享按钮时,它应该需要填写的细节进行 – Ajay

+0

你是什么意思,“它应该需要填写的细节开始”? – Jas

+0

语法错误: - 在谷歌加分享后,用户应该从谷歌加注销,当其他用户点击分享按钮时,他/她应该需要填写他/她的细节分享在谷歌加。 我还在我的应用程序中集成了facebook sdk,并且每次用户点击登录按钮他/她都重定向到webview中的facebook登录页面。为此,我从我的Android设备中删除了Facebook应用程序 – Ajay

0

试试这个解决方案。

首先声明:

private static final int REQUEST_GOOGLE_SHARE = 10; // Or another number 

在您的 “共享” 的代码中使用:

startActivityForResult(shareIntent, REQUEST_GOOGLE_SHARE); 

然后,你必须管理的onActivityResult()法 “注销/断开”。试着用以下:

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

    switch (requestCode) { 

     ... 

     case REQUEST_GOOGLE_SHARE: 
      if (resultCode == Activity.RESULT_OK) { 
       // Disconnect the user from Google 
       if (mGoogleApiClient.isConnected()) { 
        Plus.AccountApi.clearDefaultAccount(mGoogleApiClient); 
        Plus.AccountApi.revokeAccessAndDisconnect(mGoogleApiClient); 
        mGoogleApiClient.disconnect(); 
       } 
      } 
      break; 
    } 

} 

这样一来,你分享信息后调用startActivityOnResult()方法。 之后,onActivityResult()自动调用。在这种方法中,在REQUEST_GOOGLE_SHARE的情况下,您检查共享是否顺利,如果是,则断开用户连接。

相关问题