Skip to content

Commit

Permalink
Merge pull request firebase#1172 from firebase/version-3.2.2-release
Browse files Browse the repository at this point in the history
Version 3.2.2
  • Loading branch information
samtstern committed Feb 27, 2018
2 parents 67d73b6 + f3db767 commit 0e5bb59
Show file tree
Hide file tree
Showing 147 changed files with 6,550 additions and 6,291 deletions.
8 changes: 6 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
language: android
jdk: oraclejdk8
# See https://github.com/travis-ci/travis-ci/issues/5582
sudo: required
sudo: required # See https://github.com/travis-ci/travis-ci/issues/5582
env:
global:
- secure: AeYETdNH/qdqvc3QScrZYJgV4Gupkj0LKeCpUP96I8DJBGmxZQeRWMI+mjtJzksTddnYnRQCU189UCJJJk8MH79cZQsvLAc9M8/f7nnX2s54NG2KZZV08t8xvlCS/XUmkwY6fCQsIoDAGA/+35pHp+pRU3j3gq/qxHtWWIJglt+Oew+fz5aHAO711EtnjuHwwFcc0WTPFDhOlo7goe0myAPG0I09g1yaW2odj1lQrej9bLOCvs6SJ6RRD/+4ZNLMw+r8Q662SGztOh//uCAZU67KD6FCst9AEgfECB6GPyN/UCr0rV/7HTU0rcjthr4QbNaCFPZ3hNCy13Wh7gPUM5quh481bgvx5YTtZCfKhAz0m53mkYseUlemlB7R54tOkcIezsByMhF8In2bOwVUD8JZmkhFb3bBDeao6g63defta0WIMlyYAWNxIdz//JDs40MCkOEj8s/VehvdOOnYUjwcXFsmSfqZP0Vf3Dpin51lxz1h+tSOMI5RmWEg5WICsIo/W7nvV85zgtd6/dWxunhDgKrhBpwrJsIrsOz2fDNIA9DB6BCAjYFK5rd/E4Ycww0Y8/Lxlqht39IJTSCApT17fNtFbF357z9fiKBeNXoaRIULPKXXPMMkHHPRai9RFYdCf8sCZ75aVkBJ4PsWexgBU+cTjHuw0saao68eS5s=
- secure: bPFo+6ADLN/iAZmhHBYIexE0zuiXQT5M4RA20/t0QSh6EZ8DCtbrLy8jT3L3YU1rge1Qxv8J258GxN3N6UelI/dg96e15dHUX1+8dZCx/txxPBe/q4YamaKwwJForXje/5bqMz2YqdT1e50ScxKVXo/YRWF26hynNGsq916ATKjwM9GRUep7A6aa7EKrCvuXwELzUZqV/gfA8KMD+s03T+9vpgsxfGv6tnp5lpHeR5dDtI4wFcTPLkoRfhbuIoUTBBRaHbNJpHm8fBhTQTpGTG5pxC7QVkIbArdgIwptv3XeTn/7iPdv0zcMXnof4C8hJ3tguitR3q4ae5wS/QZGi8wxpL7L/tLkeswLpkjflbIBj4/U+nUS2DayVisu4zSTSKR1A6ARvlWFhSEYxhjp9i8z45uytCod22PeXg939OUK2IosNpwychWGCab7fVECOqlwruFIwi7Tu25bng6IWtD7zipFtMrBK2JY9ykLjJx5InXN3T2OJsq3V/g6dNRCF3isIUhxWMkYqK+bMTRbcQRA55Tb3kvZ9x1GEOVLUhwtzYdFWDtRN6MlJkhrEvznL9hawa6AKYVf38wws65/K/scjtNpbkFlW0py1EBD1VSAJSl7nThZJPRIH64Uv3FbYztNR3a6rk54L3WBc53svpNcesPU/M2I/BzwUsjfvIM=
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
Expand All @@ -21,6 +24,7 @@ android:
- tools
before_script: mv library/google-services.json app/google-services.json
script: ./gradlew clean assembleDebug check
after_success: ./scripts/artifactory.sh
after_failure:
# tests
- cat app/build/reports/tests/testDebugUnitTest/index.html
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,16 +47,16 @@ libraries.
```groovy
dependencies {
// FirebaseUI for Firebase Realtime Database
implementation 'com.firebaseui:firebase-ui-database:3.2.1'
implementation 'com.firebaseui:firebase-ui-database:3.2.2'
// FirebaseUI for Cloud Firestore
implementation 'com.firebaseui:firebase-ui-firestore:3.2.1'
implementation 'com.firebaseui:firebase-ui-firestore:3.2.2'
// FirebaseUI for Firebase Auth
implementation 'com.firebaseui:firebase-ui-auth:3.2.1'
implementation 'com.firebaseui:firebase-ui-auth:3.2.2'
// FirebaseUI for Cloud Storage
implementation 'com.firebaseui:firebase-ui-storage:3.2.1'
implementation 'com.firebaseui:firebase-ui-storage:3.2.2'
}
```

Expand Down Expand Up @@ -103,7 +103,7 @@ For convenience, here are some recent examples:

| FirebaseUI Version | Firebase/Play Services Version |
|--------------------|--------------------------------|
| 3.2.1 | 11.8.0 |
| 3.2.2 | 11.8.0 |
| 3.1.3 | 11.8.0 |
| 3.1.2 | 11.6.2 |
| 3.1.0 | 11.4.2 |
Expand Down
9 changes: 5 additions & 4 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -45,19 +45,20 @@ dependencies {
implementation project(path: ':database')
implementation project(path: ':storage')

implementation 'com.facebook.android:facebook-login:4.29.0'
implementation 'com.facebook.android:facebook-login:4.30.0'
// Needed to override Facebook
implementation "com.android.support:cardview-v7:$supportLibraryVersion"
implementation "com.android.support:customtabs:$supportLibraryVersion"
implementation("com.twitter.sdk.android:twitter-core:3.1.1@aar") { transitive = true }

implementation 'com.github.bumptech.glide:glide:4.4.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.4.0'
implementation 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'

// The following dependencies are not required to use the Firebase UI library.
// They are used to make some aspects of the demo app implementation simpler for
// demonstrative purposes, and you may find them useful in your own apps; YMMV.
implementation 'pub.devrel:easypermissions:1.1.1'
implementation "android.arch.lifecycle:runtime:$architectureVersion"
implementation 'pub.devrel:easypermissions:1.1.3'
implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.5.4'
Expand Down
29 changes: 6 additions & 23 deletions app/src/main/java/com/firebase/uidemo/auth/AuthUiActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.DrawableRes;
import android.support.annotation.MainThread;
import android.support.annotation.StringRes;
import android.support.annotation.StyleRes;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.app.AppCompatDelegate;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
Expand All @@ -49,6 +49,8 @@
import butterknife.OnClick;

public class AuthUiActivity extends AppCompatActivity {
private static final String TAG = "AuthUiActivity";

private static final String GOOGLE_TOS_URL = "https://www.google.com/policies/terms/";
private static final String FIREBASE_TOS_URL = "https://firebase.google.com/terms/";
private static final String GOOGLE_PRIVACY_POLICY_URL = "https://www.google.com/policies/privacy/";
Expand Down Expand Up @@ -231,15 +233,13 @@ protected void onResume() {
}
}

@MainThread
private void handleSignInResponse(int resultCode, Intent data) {
IdpResponse response = IdpResponse.fromResultIntent(data);

// Successfully signed in
if (resultCode == RESULT_OK) {
startSignedInActivity(response);
finish();
return;
} else {
// Sign in failed
if (response == null) {
Expand All @@ -248,18 +248,14 @@ private void handleSignInResponse(int resultCode, Intent data) {
return;
}

if (response.getErrorCode() == ErrorCodes.NO_NETWORK) {
if (response.getError().getErrorCode() == ErrorCodes.NO_NETWORK) {
showSnackbar(R.string.no_internet_connection);
return;
}

if (response.getErrorCode() == ErrorCodes.UNKNOWN_ERROR) {
showSnackbar(R.string.unknown_error);
return;
}
showSnackbar(R.string.unknown_error);
Log.e(TAG, "Sign-in error: ", response.getError());
}

showSnackbar(R.string.unknown_sign_in_response);
}

private void startSignedInActivity(IdpResponse response) {
Expand All @@ -276,14 +272,12 @@ private void startSignedInActivity(IdpResponse response) {
mEnableHintSelector.isChecked())));
}

@MainThread
private void setGoogleScopesEnabled(boolean enabled) {
mGoogleScopesLabel.setEnabled(enabled);
mGoogleScopeDriveFile.setEnabled(enabled);
mGoogleScopeYoutubeData.setEnabled(enabled);
}

@MainThread
private void setFacebookScopesEnabled(boolean enabled) {
mFacebookScopesLabel.setEnabled(enabled);
mFacebookScopeFriends.setEnabled(enabled);
Expand All @@ -298,7 +292,6 @@ public void toggleDarkTheme() {
getDelegate().setLocalNightMode(mode);
}

@MainThread
@StyleRes
private int getSelectedTheme() {
if (mUseGreenTheme.isChecked()) {
Expand All @@ -312,7 +305,6 @@ private int getSelectedTheme() {
return AuthUI.getDefaultTheme();
}

@MainThread
@DrawableRes
private int getSelectedLogo() {
if (mFirebaseLogo.isChecked()) {
Expand All @@ -323,7 +315,6 @@ private int getSelectedLogo() {
return AuthUI.NO_LOGO;
}

@MainThread
private List<IdpConfig> getSelectedProviders() {
List<IdpConfig> selectedProviders = new ArrayList<>();

Expand Down Expand Up @@ -356,7 +347,6 @@ private List<IdpConfig> getSelectedProviders() {
return selectedProviders;
}

@MainThread
private String getSelectedTosUrl() {
if (mUseGoogleTos.isChecked()) {
return GOOGLE_TOS_URL;
Expand All @@ -365,7 +355,6 @@ private String getSelectedTosUrl() {
return FIREBASE_TOS_URL;
}

@MainThread
private String getSelectedPrivacyPolicyUrl() {
if (mUseGooglePrivacyPolicy.isChecked()) {
return GOOGLE_PRIVACY_POLICY_URL;
Expand All @@ -374,17 +363,14 @@ private String getSelectedPrivacyPolicyUrl() {
return FIREBASE_PRIVACY_POLICY_URL;
}

@MainThread
private boolean isGoogleMisconfigured() {
return AuthUI.UNCONFIGURED_CONFIG_VALUE.equals(getString(R.string.default_web_client_id));
}

@MainThread
private boolean isFacebookMisconfigured() {
return AuthUI.UNCONFIGURED_CONFIG_VALUE.equals(getString(R.string.facebook_application_id));
}

@MainThread
private boolean isTwitterMisconfigured() {
List<String> twitterConfigs = Arrays.asList(
getString(R.string.twitter_consumer_key),
Expand All @@ -394,12 +380,10 @@ private boolean isTwitterMisconfigured() {
return twitterConfigs.contains(AuthUI.UNCONFIGURED_CONFIG_VALUE);
}

@MainThread
private void showSnackbar(@StringRes int errorMessageRes) {
Snackbar.make(mRootView, errorMessageRes, Snackbar.LENGTH_LONG).show();
}

@MainThread
private List<String> getFacebookPermissions() {
List<String> result = new ArrayList<>();
if (mFacebookScopeFriends.isChecked()) {
Expand All @@ -411,7 +395,6 @@ private List<String> getFacebookPermissions() {
return result;
}

@MainThread
private List<String> getGoogleScopes() {
List<String> result = new ArrayList<>();
if (mGoogleScopeYoutubeData.isChecked()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
import android.support.annotation.MainThread;
import android.support.annotation.NonNull;
import android.support.annotation.StringRes;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
Expand Down Expand Up @@ -56,6 +56,8 @@

public class SignedInActivity extends AppCompatActivity {

private static final String TAG = "SignedInActivity";

private static final String EXTRA_IDP_RESPONSE = "extra_idp_response";
private static final String EXTRA_SIGNED_IN_CONFIG = "extra_signed_in_config";

Expand Down Expand Up @@ -126,6 +128,7 @@ public void onComplete(@NonNull Task<Void> task) {
startActivity(AuthUiActivity.createIntent(SignedInActivity.this));
finish();
} else {
Log.w(TAG, "signOut:failure", task.getException());
showSnackbar(R.string.sign_out_failed);
}
}
Expand Down Expand Up @@ -162,7 +165,6 @@ public void onComplete(@NonNull Task<Void> task) {
});
}

@MainThread
private void populateProfile() {
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user.getPhotoUrl() != null) {
Expand Down Expand Up @@ -241,7 +243,6 @@ private void populateIdpToken() {
}
}

@MainThread
private void showSnackbar(@StringRes int errorMessageRes) {
Snackbar.make(mRootView, errorMessageRes, Snackbar.LENGTH_LONG).show();
}
Expand Down
1 change: 0 additions & 1 deletion app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@
<string name="require_name">Require first/last name with email accounts.</string>

<string name="unknown_response">Unexpected onActivityResult response code</string>
<string name="unknown_sign_in_response">Unknown response from AuthUI sign-in</string>
<string name="sign_in_cancelled">Sign in cancelled</string>
<string name="no_internet_connection">No internet connection</string>
<string name="unknown_error">An unknown error occurred</string>
Expand Down
2 changes: 1 addition & 1 deletion auth/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Gradle, add the dependency:
```groovy
dependencies {
// ...
implementation 'com.firebaseui:firebase-ui-auth:3.2.1'
implementation 'com.firebaseui:firebase-ui-auth:3.2.2'
// Required only if Facebook login support is required
// Find the latest Facebook SDK releases here: https://goo.gl/Ce5L94
Expand Down
13 changes: 9 additions & 4 deletions auth/auth-proguard.pro
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,18 @@
-dontwarn com.twitter.**
-dontwarn com.facebook.**

# Don't note a bunch of dynamically referenced classes
-dontnote com.google.**
-dontnote com.facebook.**
-dontnote com.twitter.**
-dontnote com.squareup.okhttp.**
-dontnote okhttp3.internal.**

# Recommended flags for Firebase Auth
-keepattributes Signature
-keepattributes *Annotation*

# Don't warn about retrofit or okio classes
-dontwarn okio.**
-dontwarn retrofit2.Call
# Retrofit config
-dontnote retrofit2.Platform
-dontnote retrofit2.Platform$IOS$MainThreadExecutor
-dontwarn retrofit2.Platform$Java8
-keepattributes Exceptions
10 changes: 5 additions & 5 deletions auth/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -36,25 +36,25 @@ android {
dependencies {
implementation "com.android.support:design:$supportLibraryVersion"
implementation "com.android.support:customtabs:$supportLibraryVersion"
implementation 'com.android.support.constraint:constraint-layout:1.1.0-beta3'
implementation 'com.android.support.constraint:constraint-layout:1.1.0-beta5'

implementation "android.arch.lifecycle:extensions:$architectureVersion"
annotationProcessor "android.arch.lifecycle:compiler:$architectureVersion"

api "com.google.firebase:firebase-auth:$firebaseVersion"
api "com.google.android.gms:play-services-auth:$firebaseVersion"

compileOnly 'com.facebook.android:facebook-login:4.28.0'
compileOnly 'com.facebook.android:facebook-login:4.30.0'
// Needed to override Facebook
implementation "com.android.support:cardview-v7:$supportLibraryVersion"
implementation "com.android.support:customtabs:$supportLibraryVersion"
compileOnly("com.twitter.sdk.android:twitter-core:3.1.1@aar") { transitive = true }

testImplementation 'junit:junit:4.12'
//noinspection GradleDynamicVersion
testImplementation 'org.mockito:mockito-core:2.13.+'
testImplementation 'org.robolectric:robolectric:3.6.1'
testImplementation 'com.facebook.android:facebook-login:4.29.0'
testImplementation 'org.mockito:mockito-core:2.15.+'
testImplementation 'org.robolectric:robolectric:3.7'
testImplementation 'com.facebook.android:facebook-login:4.30.0'
testImplementation("com.twitter.sdk.android:twitter-core:3.1.1@aar") { transitive = true }

debugImplementation project(':internal:lintchecks')
Expand Down
8 changes: 8 additions & 0 deletions auth/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
Expand All @@ -11,6 +12,7 @@
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />

<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_application_id" />
Expand Down Expand Up @@ -60,6 +62,12 @@
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
tools:ignore="MissingRegistered" />

<activity
android:name=".ui.credentials.CredentialSaveActivity"
android:label=""
android:exported="false"
android:theme="@style/FirebaseUI.Transparent" />

<activity
android:name="com.facebook.CustomTabActivity"
android:exported="true"
Expand Down
Loading

0 comments on commit 0e5bb59

Please sign in to comment.