I have an Android project linked to Firebase where I am trying to follow the Firebase tutorial to setup Firebase Authentication using the firebase.auth package.
The problem
I need a FirebaseUser variable. But when I try to import using the following import, Android Studio just highlights the FirebaseUser part red. When I hover my mouse over it, it says it cannot resolve it. Of course, when I try to declare it inside a class, it goes red.
import com.google.firebase.auth.FirebaseUser;
Trying to figure out what is wrong
On my app level build.gradle file, I have the following dependencies:
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.google.firebase:firebase-database:9.8.0'
compile 'com.android.support:recyclerview-v7:24.2.1'
compile 'com.firebaseui:firebase-ui-database:0.4.0'
compile 'com.google.firebase:firebase-auth:9.4.0'
So I did import the firebase-auth package.
Next, when I check out the gradle external libraries, I have the FirebaseAuth class imported under the classes.jar/com.google/android.gms.internal/firebase.auth path and a bunch of other classes. However, I don't see a FirebaseUser class being imported by gradle.
Question: what am I doing wrong?
Some of my hypotheses are:
- Wrong import statement in
build.gradle- perhaps wrong version number - Gradle is not importing dependencies of dependencies for some reason.
Last note, I have not made any edits on the Manifest file.
You must use the same version of all Firebase libraries. You can upgrade
firebase-authto 9.8.0 or downgradefirebase-databaseto 9.4.0.You must also use the matching version of
firebase-ui-databaseas defined in the table provided in the Firebase UI docs. The docs also explain that the UI libs have transitive dependencies on other Firebase libs. In your case, you can eliminatefirebase-databasefrom the list.Example: