Skip to content

Commit 63572c5

Browse files
authored
Merge pull request #1122 from firebase/version-3.2.1-release
Version 3.2.1
2 parents 83e6a76 + d248eee commit 63572c5

File tree

5 files changed

+31
-18
lines changed

5 files changed

+31
-18
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,16 +46,16 @@ libraries.
4646
```groovy
4747
dependencies {
4848
// FirebaseUI for Firebase Realtime Database
49-
implementation 'com.firebaseui:firebase-ui-database:3.2.0'
49+
implementation 'com.firebaseui:firebase-ui-database:3.2.1'
5050
5151
// FirebaseUI for Cloud Firestore
52-
implementation 'com.firebaseui:firebase-ui-firestore:3.2.0'
52+
implementation 'com.firebaseui:firebase-ui-firestore:3.2.1'
5353
5454
// FirebaseUI for Firebase Auth
55-
implementation 'com.firebaseui:firebase-ui-auth:3.2.0'
55+
implementation 'com.firebaseui:firebase-ui-auth:3.2.1'
5656
5757
// FirebaseUI for Cloud Storage
58-
implementation 'com.firebaseui:firebase-ui-storage:3.2.0'
58+
implementation 'com.firebaseui:firebase-ui-storage:3.2.1'
5959
}
6060
```
6161

@@ -102,7 +102,7 @@ For convenience, here are some recent examples:
102102

103103
| FirebaseUI Version | Firebase/Play Services Version |
104104
|--------------------|--------------------------------|
105-
| 3.2.0 | 11.8.0 |
105+
| 3.2.1 | 11.8.0 |
106106
| 3.1.3 | 11.8.0 |
107107
| 3.1.2 | 11.6.2 |
108108
| 3.1.0 | 11.4.2 |

auth/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ Gradle, add the dependency:
6262
```groovy
6363
dependencies {
6464
// ...
65-
implementation 'com.firebaseui:firebase-ui-auth:3.2.0'
65+
implementation 'com.firebaseui:firebase-ui-auth:3.2.1'
6666
6767
// Required only if Facebook login support is required
6868
// Find the latest Facebook SDK releases here: https://goo.gl/Ce5L94

auth/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ dependencies {
5757
testImplementation 'com.facebook.android:facebook-login:4.29.0'
5858
testImplementation("com.twitter.sdk.android:twitter-core:3.1.1@aar") { transitive = true }
5959

60-
implementation project(':internal:lintchecks')
60+
debugImplementation project(':internal:lintchecks')
6161
}
6262

6363
javadoc.include([

auth/src/main/java/com/firebase/ui/auth/util/signincontainer/SignInDelegate.java

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import com.google.android.gms.auth.api.credentials.CredentialRequestResponse;
3030
import com.google.android.gms.auth.api.credentials.CredentialsClient;
3131
import com.google.android.gms.auth.api.credentials.IdentityProviders;
32+
import com.google.android.gms.common.api.CommonStatusCodes;
3233
import com.google.android.gms.common.api.ResolvableApiException;
3334
import com.google.android.gms.tasks.OnCompleteListener;
3435
import com.google.android.gms.tasks.OnFailureListener;
@@ -93,14 +94,26 @@ public void onCreate(Bundle savedInstance) {
9394
}
9495

9596
FlowParameters flowParams = getFlowParams();
96-
if (flowParams.enableCredentials) {
97+
98+
// Only support password credentials if email auth is enabled
99+
boolean supportPasswords = false;
100+
for (AuthUI.IdpConfig config : flowParams.providerInfo) {
101+
if (EmailAuthProvider.PROVIDER_ID.equals(config.getProviderId())) {
102+
supportPasswords = true;
103+
}
104+
}
105+
List<String> accountTypes = getSupportedAccountTypes();
106+
107+
// If the request will be empty, avoid the step entirely
108+
boolean willRequestCredentials = supportPasswords || accountTypes.size() > 0;
109+
110+
if (flowParams.enableCredentials && willRequestCredentials) {
97111
getDialogHolder().showLoadingDialog(R.string.fui_progress_dialog_loading);
98112

99113
mCredentialsClient = GoogleApiUtils.getCredentialsClient(getActivity());
100-
101114
mCredentialsClient.request(new CredentialRequest.Builder()
102-
.setPasswordLoginSupported(true)
103-
.setAccountTypes(getSupportedAccountTypes().toArray(new String[0]))
115+
.setPasswordLoginSupported(supportPasswords)
116+
.setAccountTypes(accountTypes.toArray(new String[accountTypes.size()]))
104117
.build())
105118
.addOnCompleteListener(this);
106119
} else {
@@ -109,7 +122,7 @@ public void onCreate(Bundle savedInstance) {
109122
}
110123

111124
@Override
112-
public void onSaveInstanceState(Bundle outState) {
125+
public void onSaveInstanceState(@NonNull Bundle outState) {
113126
// It doesn't matter what we put here, we just don't want outState to be empty
114127
outState.putBoolean(ExtraConstants.HAS_EXISTING_INSTANCE, true);
115128
super.onSaveInstanceState(outState);
@@ -122,19 +135,19 @@ public void onComplete(@NonNull Task<CredentialRequestResponse> task) {
122135
// Auto sign-in success
123136
handleCredential(task.getResult().getCredential());
124137
return;
125-
} else {
126-
if (task.getException() instanceof ResolvableApiException) {
127-
ResolvableApiException rae = (ResolvableApiException) task.getException();
138+
} else if (task.getException() instanceof ResolvableApiException) {
139+
ResolvableApiException rae = (ResolvableApiException) task.getException();
140+
if (rae.getStatusCode() == CommonStatusCodes.RESOLUTION_REQUIRED) {
128141
try {
129142
startIntentSenderForResult(rae.getResolution().getIntentSender(),
130143
RC_CREDENTIALS_READ);
131144
return;
132145
} catch (IntentSender.SendIntentException e) {
133146
Log.e(TAG, "Failed to send Credentials intent.", e);
134147
}
135-
} else {
136-
Log.e(TAG, "Non-resolvable exception:\n" + task.getException());
137148
}
149+
} else {
150+
Log.e(TAG, "Non-resolvable exception:\n" + task.getException());
138151
}
139152
startAuthMethodChoice();
140153
}

constants.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
project.ext {
22
submodules = ['database', 'auth', 'storage', 'firestore', 'common']
33
group = 'com.firebaseui'
4-
version = '3.2.0'
4+
version = '3.2.1'
55
pomdesc = 'Firebase UI Android'
66

77
compileSdk = 27

0 commit comments

Comments
 (0)