J'ai ajouté
apply plugin: 'com.google.gms.google-services'
compile 'com.google.firebase:firebase-auth:10.0.1'
dans build.gridle (app)
Et dans le module j'ai ajouté
classpath 'com.google.gms:google-services:3.0.0'
Et c'est mon code
public class splashscr extends Activity implements View.OnClickListener{
TabHost tab ;
Button logbtn,signup;
EditText email,password,signupemail,signuppassword;
private FirebaseAuth firebaseAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tab =(TabHost) findViewById(R.id.tabhost);
logbtn = (Button) findViewById(R.id.btn_login);
signup = (Button) findViewById(R.id.btn_signup);
password = (EditText)findViewById(R.id.input_password);
email = (EditText)findViewById(R.id.input_email);
signupemail =(EditText)findViewById(R.id.signupinput_email);
signuppassword = (EditText) findViewById(R.id.signupinput_password);
firebaseAuth = FirebaseAuth.getInstance();
logbtn.setOnClickListener(this);
signup.setOnClickListener(this);
tab.setup();
TabHost.TabSpec spec = tab.newTabSpec("tag1");
spec.setIndicator("",getResources().getDrawable(R.drawable.loginpic));
spec.setContent(R.id.tab1);
tab.addTab(spec);
spec = tab.newTabSpec("tag2");
spec.setIndicator("",getResources().getDrawable(R.drawable.signupp));
spec.setContent(R.id.tab2);
tab.addTab(spec);
}
@Override
public void onClick(View view) {
final Intent I = new Intent(this,HomeActivity.class);
final String emailout = signupemail.getText().toString();
final String passwordout = signuppassword.getText().toString();
if (view == signup){
(firebaseAuth.createUserWithEmailAndPassword(emailout,passwordout)).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()){
Toast.makeText(splashscr.this, "تم تسجيلك بنجاح ", Toast.LENGTH_SHORT).show();
startActivity(I);
finish();
}
else
{
Log.e("ERROR", task.getException().toString());
Toast.makeText(splashscr.this, "فشل التسجيل", Toast.LENGTH_SHORT).show();
}
Toast.makeText(splashscr.this,emailout+passwordout, Toast.LENGTH_SHORT).show();
}
});
}
}
}
Et je reçois cette erreur:
E/ERROR: com.google.firebase.FirebaseException: An internal error has occurred. [ OPERATION_NOT_ALLOWED ]
W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
quel est le problème?
Essayez de synchroniser de nouveau votre client avec votre application Firebase et rajoutez le fichier .json . Dans Android studio 2.3, cliquez sur Outils> Firebase et dans l’assistant, vérifiez si votre application est connectée.
Connectez-vous à votre console Firebase et activez la méthode de connexion à la messagerie et au mot de passe pour résoudre le problème.
Vérifiez dans votre console Firebase que "l'authentification anonyme" est autorisée. Cela devrait résoudre votre problème.
Vérifiez également l'autorisation INTERNET dans votre manifeste. C'est tellement évident, mais ...
Bonne chance.