美好的一天!使用GoogleSignInApi时遇到问题。当我通过WIFI连接使用它时,它工作得很好。但是当我关闭WIFI并仅使用移动数据时,我从Auth.GoogleSignInApi.getSignInIntent
活动结果中获得GoogleSignInStatusCodes.NETWORK_ERROR
。Android GoogleSignIn API错误状态{statusCode = NETWORK_ERROR,resolution = null}
我正在使用Firebase UI进行身份验证,但我想它与模块无关,因为我直接从GoogleSignInApi收到网络错误。
这是它的样子时,我设置了SignInOptions:
String mClientId = activity.getString(R.string.default_web_client_id);
GoogleSignInOptions googleSignInOptions;
GoogleSignInOptions.Builder builder = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.requestIdToken(mClientId);
for (String scopeString : idpConfig.getScopes()) {
builder.requestScopes(new Scope(scopeString));
}
if (!TextUtils.isEmpty(email)) {
builder.setAccountName(email);
}
googleSignInOptions = builder.build();
mGoogleApiClient = new GoogleApiClient.Builder(activity)
.enableAutoManage(activity, AUTO_MANAGE_ID, this)
.addApi(Auth.GOOGLE_SIGN_IN_API, googleSignInOptions)
.build();
这就是我如何启动签到活动:
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
activity.startActivityForResult(signInIntent, RC_SIGN_IN);
我也得到了NETWORK_ERROR
这里:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == RC_SIGN_IN) {
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
if (result != null) {
if (result.isSuccess()) {
mIDPCallback.onSuccess(createIDPResponse(result.getSignInAccount()));
} else {
onError(result);
}
} else {
onError("No result found in intent");
}
}
}
在按键等我已正确配置一切,因为它正在WI工作正常FI。
在许可结束,我已经要求所有的权限(和妥善处理了Android 6.0太)
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
任何帮助将appriciated。
您是否确定自己没有使用过最大数据报价?您能否确认另一个应用程序在移动数据上正常工作? –
是的 - 除了那些使用谷歌播放服务的人以外,其他人都能正常工作,因为我禁用了该服务的后台数据。 –