我目前正在尝试使用 android studio 和 java 为 Android 应用程序实现个人资料页面。我有一个将用户个人资料信息上传到 firebase 的活动,现在我试图让我的个人资料活动从 firebase 获取用户信息并将其显示在屏幕上。为了做到这一点,我创建了一个名为 contactInfo 的数据库引用,它引用了给定用户配置文件信息的位置。但是,当我尝试通过调试器运行此代码段时,没有到达 addValueEvent 处理程序中的任何代码,我不知道为什么。如果有人对此问题有任何想法或修复方法,我将不胜感激。
contactInfo.child("email").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
contactEmail = snapshot.getValue(String.class);
email.setText(contactEmail);
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Toast.makeText(Profile.this, "Failed to get email", Toast.LENGTH_SHORT).show();
}
});
contactInfo.child("address").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
contactAddress = snapshot.getValue(String.class);
Toast.makeText(Profile.this, "Got Addy", Toast.LENGTH_SHORT).show();
address.setText(contactAddress);
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Toast.makeText(Profile.this, "Failed to get addy", Toast.LENGTH_SHORT).show();
}
});
contactInfo.child("phoneNumber").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
contactPhone = snapshot.getValue(String.class);
phoneNumber.setText(contactPhone);
}