您好我正在使用谷歌加。当我点击按钮时,它需要显示电子邮件和其他信息。但问题是如果用户有多个帐户,没有点击按钮,对话框就会打开。关闭对话框并单击按钮后,再次打开对话框并正常工作。我找不到这个奇怪的问题。 当我启动屏幕而不点击按钮时,选择一个帐户对话框正在打开。怎么解决这个问题?
这是我的代码:我正在使用片段。
public class LoginFragment extends SherlockFragment implements OnClickListener,
ConnectionCallbacks, OnConnectionFailedListener {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
Common.mGoogleApiClient = new GoogleApiClient.Builder(getActivity())
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this).addApi(Plus.API)
.addScope(Plus.SCOPE_PLUS_LOGIN).build();
Common.mGoogleApiClient.connect();
return view;
}
public void onStop() {
super.onStop();
if (Common.mGoogleApiClient.isConnected()) {
Common.mGoogleApiClient.disconnect();
}
}
}
Common:
public class Common {
static int RC_SIGN_IN = 0;
static String TAG = "MainActivity";
static int PROFILE_PIC_SIZE = 400;
static GoogleApiClient mGoogleApiClient;
static boolean mIntentInProgress;
static boolean mSignInClicked;
static ConnectionResult mConnectionResult;
static Activity con;
public Common(Activity c) {
con = c;
}
LoginActivity:
public class LoginActivity extends SherlockFragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
public void resolveSignInError() {
if (Common.mConnectionResult != null) {
if (Common.mConnectionResult.hasResolution()) {
try {
Common.mIntentInProgress = true;
Common.mConnectionResult.startResolutionForResult(
Common.con, Common.RC_SIGN_IN);
} catch (SendIntentException e) {
Common.mIntentInProgress = false;
Common.mGoogleApiClient.connect();
}
}
}
}
@Override
protected void onActivityResult(int requestCode, int responseCode,
Intent data) {
super.onActivityResult(requestCode, responseCode, data);
if (requestCode == Common.RC_SIGN_IN) {
if (responseCode != Common.con.RESULT_OK) {
Common.mSignInClicked = false;
}
Common.mIntentInProgress = false;
if (!Common.mGoogleApiClient.isConnecting()) {
Common.mGoogleApiClient.connect();
}
}
}
}
这是截图,没有点击谷歌加按钮,弹出对话框。