Я создаю приложение и извлекаю данные для профиля, такие как имя, возраст, имя пользователя, dob и т. Д. c., Из базы данных Firebase. Но когда я открываю приложение и go на странице профиля, требуется 2-3 секунды, чтобы обновить sh текст и затем отобразить данные. Я хочу сделать этот процесс быстрее. Есть ли способ сделать это? И возможно ли хранить эти данные в локальном хранилище приложения, отображать их и обновлять эти сохраненные данные позже, используя inte rnet и данные из базы данных firebase? Тот же принцип я хотел применить к изображениям, которые загружаются из хранилища Firebase. Те занимают намного больше времени, чем данные. Примерно от 4 до 5 секунд.
Это то, что я сейчас использую:
mDatabase = FirebaseDatabase.getInstance().getReference().child(current_user);
mDatabase.keepSynced(true);
mDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
String first = dataSnapshot.child("firstname").getValue().toString();
String last = dataSnapshot.child("lastname").getValue().toString();
String friend = dataSnapshot.child("friends").getValue().toString();
String post = dataSnapshot.child("posts").getValue().toString();
String user = dataSnapshot.child("username").getValue().toString();
String db = dataSnapshot.child("age").getValue().toString();
String ag = dataSnapshot.child("dob").getValue().toString();
String bo = dataSnapshot.child("bio").getValue().toString();
String rela = dataSnapshot.child("relationshipstatus").getValue().toString();
firstname.setText(first);
lasttname.setText(last);
username.setText(user);
friends.setText("Friends:"+friend);
posts.setText("Posts:"+post);
dob.setText("DOB:"+db);
age.setText("Age:"+ag);
bio.setText(bo);
relation.setText(rela);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});