【发布时间】:2018-05-07 05:38:35
【问题描述】:
我正在我的新 Android 应用中实施 Firebase 电子邮件/密码身份验证。
该应用程序在大多数情况下运行良好,除了当用户单击登录或注册这两个按钮之一时,该应用程序会跳过假定的活动,登录或注册,并直接进入 mainActivity。
这就是我编写打开下一个活动的意图的方式:-
mRegister.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(ChooseLogin.this, RegistrationActivity.class);
startActivity(intent);
finish();
return;}});
我在调试中发现了两个可能相关的错误:-
W/zygote64:由于无法识别而跳过重复类检查 类加载器 W/DynamiteModule:本地模块描述符类 com.google.firebase.auth 未找到。
还有:-
W/DynamiteModule:本地模块描述符类 com.google.android.gms.crash 未找到。
根据我对类似问题的回答:
-
检查说我已连接的 Firebase 助手。
在 Firebase 控制台中检查我已启用电子邮件/密码登录
在我的设备和模拟器上检查过,两者的行为都一样
检查我使用的是最新的 'com.google.firebase:firebase-auth:11.6.0'
检查 google play 服务是否正常 'classpath 'com.google.gms:google-services:3.1.0'
甚至添加到清单请求中以获取 Internet 权限
实现了 firebases crashylytics,但它没有捕捉到这一点
重新添加 google.services.json 文件,然后构建/重建项目
EDIT(根据要求注册Activity和logcat):
registrationActivity 的 onCreate :
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
mAuth = FirebaseAuth.getInstance();
fireBaseStateListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
final FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
Intent intent = new Intent(RegistrationActivity.this, MainActivity.class);
startActivity(intent);
finish();
return;}};
@Override
protected void onStart() {
super.onStart();
mAuth.addAuthStateListener(fireBaseStateListener);
}
日志猫:
11-23 11:58:59.652 12880-12880/com.sanruza.alpak.tinderlike I/zygote64: Late-enabling -Xcheck:jni
11-23 11:59:00.016 12880-12880/com.sanruza.alpak.tinderlike W/zygote64: Skipping duplicate class check due to unrecognized classloader
11-23 11:59:00.020 12880-12880/com.sanruza.alpak.tinderlike W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
11-23 11:59:00.027 12880-12880/com.sanruza.alpak.tinderlike W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
11-23 11:59:00.048 12880-12880/com.sanruza.alpak.tinderlike I/BiChannelGoogleApi: [FirebaseAuth: ] No Fallback module; NOT setting up for lazy initialization
11-23 11:59:00.091 12880-12914/com.sanruza.alpak.tinderlike W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
11-23 11:59:00.104 12880-12914/com.sanruza.alpak.tinderlike I/FirebaseAuth: [FirebaseAuth:] Loading module via FirebaseOptions.
11-23 11:59:00.104 12880-12914/com.sanruza.alpak.tinderlike I/FirebaseAuth: [FirebaseAuth:] Preparing to create service connection to gms implementation
11-23 11:59:00.118 12880-12917/com.sanruza.alpak.tinderlike I/DynamiteModule: Considering local module com.google.android.gms.flags:2 and remote module com.google.android.gms.flags:0
11-23 11:59:00.118 12880-12917/com.sanruza.alpak.tinderlike I/DynamiteModule: Selected local version of com.google.android.gms.flags
11-23 11:59:00.148 12880-12917/com.sanruza.alpak.tinderlike W/DynamiteModule: Local module descriptor class for com.google.android.gms.crash not found.
11-23 11:59:00.156 12880-12917/com.sanruza.alpak.tinderlike I/DynamiteModule: Considering local module com.google.android.gms.crash:0 and remote module com.google.android.gms.crash:10
11-23 11:59:00.157 12880-12917/com.sanruza.alpak.tinderlike I/DynamiteModule: Selected remote version of com.google.android.gms.crash, version >= 10
11-23 11:59:00.162 12880-12880/com.sanruza.alpak.tinderlike V/FA: Cancelling job. JobID: -385218149
11-23 11:59:00.171 12880-12880/com.sanruza.alpak.tinderlike V/FA: Registered activity lifecycle callback
11-23 11:59:00.172 12880-12880/com.sanruza.alpak.tinderlike I/FirebaseInitProvider: FirebaseApp initialization successful
11-23 11:59:00.205 12880-12921/com.sanruza.alpak.tinderlike V/FA: Collection enabled
【问题讨论】:
-
删除
return -
您的应用程序崩溃了吗?并可能显示完整的 logcat 以查看那里的问题
-
你能把RegistrationActivity的onCreate代码贴在这里
-
@FarisKapo 更改您的布局似乎您调用登录布局而不是注册布局
-
@FarisKapo 你检查你的布局名称了吗?
标签: java android firebase firebase-authentication