Firebase 身份验证 API Email/Password Android

Firebase Authentication API Email/Password Android

我正在尝试为 android 编写一个通过 Email/Password 使用 Firebase 身份验证的应用程序。它已启用。然而,教程和 Github 中示例的代码显示:

私有 FirebaseAuth mAuth;

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'

compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.google.firebase:firebase-core:9.0.2'



}


apply plugin: 'com.google.gms.google-services'

但是,我收到一条错误消息,好像“FirebaseAuth”不存在一样。然而,最新的文档另有说明。

Github sample code

如有任何帮助,我们将不胜感激。

根据 firebase 网页中的文档,您应该使用来自 firebase 的 URL 创建一个 Firebase 对象,然后从那里创建带密码的用户名或登录。您显示的代码为此使用了这个 FirebaseAuth .

这是创建新用户的代码:

Firebase ref = new Firebase("https://<YOUR-FIREBASE-APP>.firebaseio.com");
ref.createUser("bobtony@firebase.com", "correcthorsebatterystaple", new Firebase.ValueResultHandler<Map<String, Object>>() {
    @Override
    public void onSuccess(Map<String, Object> result) {
        System.out.println("Successfully created user account with uid: " + result.get("uid"));
    }
    @Override
    public void onError(FirebaseError firebaseError) {
        // there was an error
    }
});

这是登录他的代码:

Firebase ref = new Firebase("https://<YOUR-FIREBASE-APP>.firebaseio.com");
ref.authWithPassword("bobtony@firebase.com", "correcthorsebatterystaple", new Firebase.AuthResultHandler() {
    @Override
    public void onAuthenticated(AuthData authData) {
        System.out.println("User ID: " + authData.getUid() + ", Provider: " + authData.getProvider());
    }
    @Override
    public void onAuthenticationError(FirebaseError firebaseError) {
        // there was an error
    }
});

从此处的快速入门指南中获取所有这些信息:https://www.firebase.com/docs/android/guide/login/password.html#section-logging-in

希望对您有所帮助。

com.google.firebase:firebase-core:9.0.2' 依赖项替换为 com.google.firebase:firebase-auth:9.0.2 依赖项。所以:

compile 'com.google.firebase:firebase-auth:9.0.2'

而不是

compile 'com.google.firebase:firebase-core:9.0.2' 在你的依赖下。

我没有在 core 依赖项中找到 FirebaseAuth class,但我确实在 auth 依赖项中找到了它。此外,如果您检查 their 依赖项列表,它们不会添加 core 依赖项,而是添加 auth 依赖项。