В этом упражнении я попытался найти электронную почту и сопоставить двух пользователей.и обновите базу данных Firebase, которая содержит электронную почту пользователя и содержание ставок.а затем возможность начать другую деятельность.но он читает ноль в другом действии, даже база данных firebase уже обновлена.
btn.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
Iterator<User> checkEmail = userArrayList.iterator();
int a =0;
while (checkEmail.hasNext()) {
User tempUser = checkEmail.next();
if ((searchEmail.getText().toString()).equals(tempUser.getEmail())) {
a=1;
showProgress(true);
mDatabase.child("user_info").child(myTokenID).child("isVS").setValue(tempUser.getUsername());
mDatabase.child("user_info").child(myTokenID).child("betting").setValue(betContents.getText().toString());
mDatabase.child("user_info").child(tempUser.getUsername()).child("isVS").setValue(myTokenID);
mDatabase.child("user_info").child(tempUser.getUsername()).child("betting").setValue(betContents.getText().toString());
Handler timer = new Handler();
timer.postDelayed(new Runnable() {
public void run() {
final Intent intent = new Intent(getApplicationContext(), MatchActivity.class);
intent.putExtra("betContents", betContents.getText().toString());
intent.putExtra("userList", userArrayList);
startActivity(intent);
finish();
showProgress(false);
}
}, 2000);
}
}
if(a==0)
Toast.makeText(getApplicationContext(), "Please, enter the available e-mail", Toast.LENGTH_LONG).show();
}
});
Я обновляю firebase этим кодом и запускаю другое действие, если условие истинно.
String yourUid = "";
Iterator<User> userIterator = userArrayList.iterator();
while (userIterator.hasNext()) {
final User tempUser = userIterator.next();
if (tempUser.getUsername().equals(user.getUid())) {
if (betContents.equals("null")) {
betContents = tempUser.getBetting();
}
yourUid = tempUser.getIsVS();// in here read the null value
myEmail = tempUser.getEmail();
break;
}
}
TextView yourID = (TextView) findViewById(R.id.yourID);
yourID.setText(yourEmail.split("@")[0]);
TextView myID = (TextView) findViewById(R.id.myID);
myID.setText(myEmail.split("@")[0]);
TextView contents = (TextView) findViewById(R.id.contents);
contents.setText(betContents);
В этом действииЯ уже нахожу, что база данных firebase является обновлением, но isbts и isBetting в firebase bd читают данные как пустые.в чем проблема?