firebase finish()의 새로운 기능은 내 가입 활동을 죽이지 않지만 계속 백그라운드에서 진행됩니다. 데이터를 지속적으로 데이터베이스에 저장합니다. 나는 무엇을 해야할지 잘 모릅니다.finish()가 활동을 파괴하지 않습니다.
Signup.java의 코드
final Button signup = (Button) findViewById(R.id.signup);
final EditText name, phno, password;
name = (EditText) findViewById(R.id.sign_up_name);
phno = (EditText) findViewById(R.id.sign_up_phno);
password = (EditText)findViewById(R.id.sign_up_pass);
final FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference table_user = database.getReference("User");
signup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
final ProgressDialog mdialog= new ProgressDialog(Signup.this);
mdialog.setMessage("Please wait");
mdialog.show();
table_user.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot)
{
if(dataSnapshot.child(phno.getText().toString()).exists())
{
mdialog.dismiss();
Toast.makeText(Signup.this,"Phone No. Already Registered",Toast.LENGTH_SHORT).show();
}
else
{
mdialog.dismiss();
User user = new User(name.getText().toString(), password.getText().toString());
table_user.child(phno.getText().toString()).setValue(user);
Toast.makeText(Signup.this, "Sign Up Successful", Toast.LENGTH_SHORT).show();
finish();
는 // mainActivity.java로 리디렉션하지만 데이터 insersion 코드가 완전히 완벽하게 폐쇄 paranthesis
User.java
public class User {
private String Name;
private String Password;
public User(String y,String x) {
Name=y;
Password=x;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getPassword() {
return Password;
}
public void setPassword(String password) {
Password = password;
}
}
activity_signup로 기록 계속 .xml
,210
이 문제를 해결할 수있는 방법이있다. 직접 안드로이드에서 작업을 완료 당신은 캔트 때문에 당신이 그것을 파괴하기 전에 말할 필요
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
: 마무리()
코드에서 성공적으로 가입하면 주 활동으로 연결되지 않습니다. –
활동을 마치기 전에 firebase에서 removeListener를 제거해야합니다. – ADM
코드를 삽입했는지, 아니면 삽입하지 않은 상태로 디버깅을 했습니까? –