Я создаю приложение, которое имеет два типа пользователей. Один - клиент, а второй - ремонтный инженер. В mainActivity я предоставляю пользователю два варианта: выбрать вариант клиента или параметр repairEngineer. Я построил отдельные классы для них обоих. Когда я вхожу в систему как клиент, он попадает в область клиентов, но когда я нажимаю на repairEngneer, он не требует параметров входа. А также я хочу, чтобы, если пользователь вошел в систему, mainActivity не должно отображаться при повторном открытии приложения, пока пользователь не выйдет.
mainActivity
public class MainActivity extends AppCompatActivity {
private Button bCustomer, bLabEngineer;
private FirebaseAuth cAuth;
private FirebaseAuth.AuthStateListener firebaseAuthListner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
cAuth = FirebaseAuth.getInstance();
firebaseAuthListner = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if(user != null) {
if(user.equals("Customers")) {
Intent intent = new Intent(MainActivity.this, CustomerSignin.class);
startActivity(intent);
finish();
return;
} else if(user.equals("LabEngineers")) {
Intent intent = new Intent(MainActivity.this, LabEngineerSignin.class);
startActivity(intent);
finish();
return;
}
}
}
};
bCustomer = (Button) findViewById(R.id.customer);
bCustomer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(MainActivity.this, CustomerSignin.class);
startActivity(i);
finish();
return;
}
});
bLabEngineer = (Button) findViewById(R.id.labengineer);
bLabEngineer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(MainActivity.this, LabEngineerSignin.class);
startActivity(i);
finish();
return;
}
});
}
@Override
protected void onStart() {
super.onStart();
cAuth.addAuthStateListener(firebaseAuthListner);
}
@Override
protected void onStop() {
super.onStop();
cAuth.removeAuthStateListener(firebaseAuthListner);
}
}