我正在尝试从firebase实时数据库中检索数据并将其保存到这样的变量中:
mUserDatabase.child(mCurrentUserId).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
myPublicKeyString = dataSnapshot.child("public_key").getValue().toString();
myPrivateKeyString = dataSnapshot.child("private_key").getValue().toString();
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
myPublicKeyString
和myPrivateKeyString
是全局变量。当我尝试在System.out.println(myPublicKeyString);
函数中执行ValueEventListener
时,它确实打印出了正确的数据,但当我尝试在函数外部执行相同操作时,它会打印出null
。