我正在制作一个Android应用程序,用户可以在google上分享他们对我的应用程序的看法。第一次,当我点击分享按钮时,它要求输入用户的用户名和密码,输入后分享成功执行,然后再次点击分享按钮后,它没有询问用户名和密码,应用程序只需登录使用旧用户登录详细信息。它是许多用户从单个设备使用的应用程序。因此,每当新用户使用我的应用程序时,他/她就应该被重定向到新的登录页面。
对于分享,我使用以下代码: -
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);
}
});
}
}
他们的方法除了googleplus集成以便从Android应用程序共享吗? 任何帮助表示赞赏
问候
阿贾伊
答案 0 :(得分:0)
您可以使用:
private void signOutFromGplus() {
if (mGoogleApiClient.isConnected()) {
Plus.AccountApi.clearDefaultAccount(mGoogleApiClient);
mGoogleApiClient.disconnect();
mGoogleApiClient.connect();
updateUI(false);
}
}
请参阅this更多详情。
答案 1 :(得分: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
情况下,您检查共享是否顺利,如果是,则断开用户连接。