Java 在firebase身份验证后启动新活动
这是我的代码。。。。。 在此代码中使用意图启动新活动的位置。。。 注册用户电子邮件和密码后,新活动应打开。。。。我自己尝试过,但是,它没有注册就开始了新的活动。 我希望用户在注册后转到secondactivity。 `//定义视图对象 私人编辑文本编辑电子邮件; 私人编辑文本编辑密码; 私人按钮启动; 私有进程对话Java 在firebase身份验证后启动新活动,java,android,firebase-authentication,start-activity,Java,Android,Firebase Authentication,Start Activity,这是我的代码。。。。。 在此代码中使用意图启动新活动的位置。。。 注册用户电子邮件和密码后,新活动应打开。。。。我自己尝试过,但是,它没有注册就开始了新的活动。 我希望用户在注册后转到secondactivity。 `//定义视图对象 私人编辑文本编辑电子邮件; 私人编辑文本编辑密码; 私人按钮启动; 私有进程对话 //defining firebaseauth object private FirebaseAuth firebaseAuth; @Override protected void
//defining firebaseauth object
private FirebaseAuth firebaseAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login_activity);
//initializing firebase auth object
firebaseAuth = FirebaseAuth.getInstance();
//initializing views
editTextEmail = (EditText) findViewById(R.id.editText3);
editTextPassword = (EditText) findViewById(R.id.editText4);
buttonSignup = (Button) findViewById(R.id.buttonSignup);
progressDialog = new ProgressDialog(this);
//attaching listener to button
buttonSignup.setOnClickListener(this);
}
private void registerUser(){
//getting email and password from edit texts
String email = editTextEmail.getText().toString().trim();
String password = editTextPassword.getText().toString().trim();
//checking if email and passwords are empty
if(TextUtils.isEmpty(email)){
Toast.makeText(this,"Please enter email",Toast.LENGTH_LONG).show();
return;
}
if(TextUtils.isEmpty(password)){
Toast.makeText(this,"Please enter password",Toast.LENGTH_LONG).show();
return;
}
//if the email and password are not empty
//displaying a progress dialog
progressDialog.setMessage("Registering Please Wait...");
progressDialog.show();
//creating a new user
firebaseAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
//checking if success
if(task.isSuccessful()){
//display some message here
Toast.makeText(LoginActivity.this,"Successfully registered",Toast.LENGTH_LONG).show();
}else{
//display some message here
Toast.makeText(LoginActivity.this,"Registration Error",Toast.LENGTH_LONG).show();
}
progressDialog.dismiss();
}
});
startActivity(new Intent(this,SecondActivity.class));
}
@Override
public void onClick(View view) {
//calling register method on click
registerUser();
}
}`
//定义firebaseauth对象
私有FirebaseAuth FirebaseAuth;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.login_活动);
//初始化firebase身份验证对象
firebaseAuth=firebaseAuth.getInstance();
//初始化视图
editTextEmail=(EditText)findViewById(R.id.editText3);
editTextPassword=(EditText)findViewById(R.id.editText4);
buttonSignup=(Button)findViewById(R.id.buttonSignup);
progressDialog=新建progressDialog(此);
//将侦听器附加到按钮
buttonSignup.setOnClickListener(这个);
}
私有无效注册器(){
//从编辑文本获取电子邮件和密码
字符串email=editTextEmail.getText().toString().trim();
字符串密码=editTextPassword.getText().toString().trim();
//检查电子邮件和密码是否为空
如果(TextUtils.isEmpty(电子邮件)){
Toast.makeText(这是“请输入电子邮件”,Toast.LENGTH_LONG.show();
返回;
}
if(TextUtils.isEmpty(密码)){
Toast.makeText(这是“请输入密码”,Toast.LENGTH_LONG.show();
返回;
}
//如果电子邮件和密码不是空的
//显示进度对话框
progressDialog.setMessage(“正在注册,请稍候…”);
progressDialog.show();
//创建新用户
firebaseAuth.createUserWithEmailAndPassword(电子邮件,密码)
.addOnCompleteListener(这是新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
//检查是否成功
if(task.issusccessful()){
//在这里显示一些消息
Toast.makeText(LoginActivity.this,“成功注册”,Toast.LENGTH_LONG.show();
}否则{
//在这里显示一些消息
Toast.makeText(LoginActivity.this,“注册错误”,Toast.LENGTH_LONG.show();
}
progressDialog.disclose();
}
});
startActivity(新意图(本,SecondActivity.class));
}
@凌驾
公共void onClick(视图){
//单击调用register方法
registerUser();
}
}`
试试这个
- 在您的
传递任务中。isSuccessful
意图
firebaseAuth.createUserWithEmailAndPassword(电子邮件,密码)
.addOnCompleteListener(这是新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
startActivity(新意图(当前的_活动。这个,下一个_活动。类));
}否则{
}
}
});
很高兴能帮你做这件事
- 在您的
传递任务中。isSuccessful
意图
firebaseAuth.createUserWithEmailAndPassword(电子邮件,密码)
.addOnCompleteListener(这是新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
startActivity(新意图(当前的_活动。这个,下一个_活动。类));
}否则{
}
}
});
很乐意帮助您startActivity必须在task.issucessful()方法中调用。当前,您甚至在获得成功响应之前就开始调用startActivity。必须在task.isSuccessful()方法内调用startActivity。当前,您甚至在收到成功响应之前就调用了startActivity。在task.isSuccessful()if block中。您应该将startActivity(new Intent())置于“if(task.isSuccessfull())”条件中。现在,无论注册过程成功与否,您都将开始新的活动。TQM。。。如果阻塞,则它在task.isSuccessful()内部工作。您应该将startActivity(new Intent())放在“if(task.isSuccessfull())”条件内。现在,无论注册过程成功与否,您都将开始新的活动。TQM。。。它起作用了
firebaseAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
startActivity(new Intent(current_activity.this,next_activity.class));
}else{
}
}
});