Chuan Ren b378456a54 Add apple sign in to sample code (#4583) 6 ani în urmă
..
ApiTests 6fafa08eae Update instructions for auth api tests. (#3894) 6 ani în urmă
App df5f7961d5 Sample app refactor (#2872) 7 ani în urmă
AuthSample 9f97f4ec8e One more Podfile update for Installations (#4540) 6 ani în urmă
E2eTests 593774b1b6 E2e tests split (#2401) 7 ani în urmă
Sample b378456a54 Add apple sign in to sample code (#4583) 6 ani în urmă
Tests a55467a225 Unify naming of keychain services and user defaults (#3473) 6 ani în urmă
README.md 6fafa08eae Update instructions for auth api tests. (#3894) 6 ani în urmă

README.md

Running Sample Application

In order to run this application, you'll need to follow the following steps!

GoogleService-Info.plist files

You'll need valid GoogleService-Info.plist files for those samples. To get your own GoogleService-Info.plist files:

  1. Go to the Firebase Console
  2. Create a new Firebase project, if you don't already have one
  3. For each sample app you want to test, create a new Firebase app with the sample app's bundle identifier (e.g. com.google.FirebaseExperimental1.dev)
  4. Download the resulting GoogleService-Info.plist and place it in Sample/GoogleService-Info.plist

GoogleService-Info_multi.plist files

  1. Create a second sample app and download its GoogleService_Info.plist file. This can be in the same Firebase project as the one above, or a different one. Use a different app bundle identifier (e.g. com.google.FirebaseExperimental2.dev).
  2. Save this plist file as GoogleService-Info_multi.plist in Sample/GoogleService-Info_multi.plist. This enables testing that FirebaseAuth continues to work after switching the Firebase App in the runtime.

Getting your own Credential files

Please follow the instructions in Sample/AuthCredentialsTemplate.h to generate the AuthCredentials.h file.

Application.plist file

Generate the Sample/Application.plist file from Sample/ApplicationTemplate.plist by replacing $BUNDLE_ID and $REVERSED_CLIENT_ID with their values from GoogleService-Info.plist and $REVERSED_CLIENT_MULTI_ID with its value from GoogleService-Info_multi.plist.

This could be done in bash via something like this from within the Sample directory:

$ BUNDLE_ID=`xmllint --xpath "/plist/dict/key[.='BUNDLE_ID']/following-sibling::string[1]/text()" GoogleService-Info.plist`
$ REVERSED_CLIENT_ID=`xmllint --xpath "/plist/dict/key[.='REVERSED_CLIENT_ID']/following-sibling::string[1]/text()" GoogleService-Info.plist`
$ REVERSED_CLIENT_MULTI_ID=`xmllint --xpath "/plist/dict/key[.='REVERSED_CLIENT_ID']/following-sibling::string[1]/text()" GoogleService-Info_multi.plist`
$ sed \
      -e 's/\$BUNDLE_ID/'$BUNDLE_ID'/g' \
      -e 's/\$REVERSED_CLIENT_ID/'$REVERSED_CLIENT_ID'/g' \
      -e 's/\$REVERSED_CLIENT_MULTI_ID/'$REVERSED_CLIENT_MULTI_ID'/g' \
      ApplicationTemplate.plist > Application.plist

Sample.entitlements file

In order to test the "Reset Password In App" feature you will need to create a dynamic link for your Firebase project in the Dynamic Links section of the Firebase Console. Once the link is created, please copy the contents of Sample/SampleTemplate.entitlements into a file named Sample/Sample.entitlements and replace $KAPP_LINKS_DOMAIN with your own relevant appLinks domain. Your appLinks domains are domains that your app will handle as universal links, in this particular case you can obtain this domain from the aforementioned Dynamic Links section of the Firebase Console.

Getting your own Credential files

Please follow the instructions in Sample/AuthCredentialsTemplate.h to generate the AuthCredentials.h file.

Running SwiftSample Application

In order to run this application, you'll need to follow the following steps!

GoogleService-Info.plist files

You'll need valid GoogleService-Info.plist files for those samples. To get your own GoogleService-Info.plist files:

  1. Go to the Firebase Console
  2. Create a new Firebase project, if you don't already have one
  3. For each sample app you want to test, create a new Firebase app with the sample app's bundle identifier (e.g. com.google.FirebaseExperimental2.dev)
  4. Download the resulting GoogleService-Info.plist and place it in SwiftSample/GoogleService-Info.plist

Info.plist file

Please follow the instructions in SwiftSample/InfoTemplate.plist to generate the right Info.plist file

Getting your own Credential files

Please follow the instructions in SwiftSample/AuthCredentialsTemplate.swift to generate the AuthCredentials.swift file.

Running API tests

In order to run the API tests, you'll need to follow the following steps!

Getting your own Credential files

Please follow the instructions in ApiTests/AuthCredentialsTemplate.h to generate the AuthCredentials.h file.

Console

In the Firebase conosle for your test project, you'll need to enable the following auth providers:

  • Email/Password
  • Google
  • Facebook
  • Anonymous

You'll also need to create a user with email user+email_existing_user@example.com and password of password.

Usage

$ pod update
$ open Firebase.xcworkspace

Then select an Auth scheme and run.