Android
Users
Inscription et Connexion Utilisateurs sur Android avec Parse
18 min
tutoriel de connexion et d'enregistrement des utilisateurs introduction dans cette section, nous allons examiner comment créer une application avec un enregistrement utilisateur simple en utilisant les fonctionnalités principales de parse server via back4app ce tutoriel utilise une application de base créée dans android studio 4 1 1 avec buildtoolsversion=30 0 2 buildtoolsversion=30 0 2 , compile sdk version = 30 0 2 compile sdk version = 30 0 2 et targetsdkversion 30 targetsdkversion 30 à tout moment, vous pouvez accéder au projet android complet construit avec ce tutoriel sur nos dépôts github dépôt d'exemple kotlin dépôt d'exemple java objectif nous allons apprendre comment se connecter et s'enregistrer en utilisant parse voici un aperçu de ce que nous allons réaliser prérequis pour compléter ce tutoriel, nous avons besoin de android studio une application créée sur back4app remarque suivez le tutoriel de nouvelle application parse pour apprendre à créer une application parse sur back4app une application android connectée à back4app remarque suivez le tutoriel d'installation du sdk parse pour créer un projet android studio connecté à back4app un appareil (ou appareil virtuel ) fonctionnant sous android 4 1 (jelly bean) ou version ultérieure 1 importer la bibliothèque dans cette étape, nous allons importer les bibliothèques que nous allons utiliser dans notre projet nous allons ajouter les classes parse suivantes à nos activités 2\ nous utiliserons fréquemment des fonctions lambda dans notre projet, c'est pourquoi nous devons ajouter java 1 8 à notre projet via build gradle(module\ app) 2 inscription s'inscrire crée essentiellement un nouvel objet parse user dans la classe user, affiché comme “user” dans votre application tableau de bord tableau de bord nous devons définir au moins deux propriétés lors de la création d'un nouvel utilisateur => parseuser setusername() parseuser setusername() et parseuser setpassword() parseuser setpassword() la méthode utilisée pour enregistrer le nouvel utilisateur sur android est parseuser signupinbackground() parseuser signupinbackground() , qui peut être accompagnée d'une fonction de rappel remarque les objets de cette classe spéciale ne sont pas enregistrés sur le tableau de bord tableau de bord avec parseobject save() parseobject save() méthode pour faire fonctionner signupactivity signupactivity , suivez ces étapes importer dans votre signupactivity signupactivity , en plus des dépendances importées dans étape 1 2\ pour implémenter l'enregistrement des utilisateurs, utilisez simplement le code suivant dans le oncreate() oncreate() méthode 1 parseuser user = new parseuser(); 2 // set the user's username and password, which can be obtained by a forms 3 user setusername( "\<your username here>"); 4 user setpassword( "\<your password here>"); 5 user signupinbackground(new signupcallback() { 6 @override 7 public void done(parseexception e) { 8 if (e == null) { 9 showalert("successful sign up!", "welcome" + "\<your username here>" +"!"); 10 } else { 11 parseuser logout(); 12 toast maketext(signupactivity this, e getmessage(), toast length long) show(); 13 } 14 } 15 });1 val user = parseuser(); 2 // set the user's username and password, which can be obtained by a forms 3 user setusername("\<your username here>"); 4 user setpassword("\<your password here>"); 5 user signupinbackground(signupcallback() { 6 if (it == null) { 7 showalert("successful sign up!", "welcome" + "\<your username here>" + "!"); 8 } else { 9 parseuser logout(); 10 toast maketext(this, it message, toast length long) show(); 11 } 12 }); dans le projet exemple, ce code est placé à l'intérieur d'un inscription inscription callback de bouton de plus, le nom d'utilisateur et le mot de passe sont récupérés en utilisant modifier les textes 3\ il est intéressant d'ajouter une méthode supplémentaire pour afficher des alert dialogs et rendre le processus plus professionnel la méthode ci dessous le fait 1 private void showalert(string title,string message){ 2 alertdialog builder builder = new alertdialog builder(signupactivity this) 3 settitle(title) 4 setmessage(message) 5 setpositivebutton("ok", new dialoginterface onclicklistener() { 6 @override 7 public void onclick(dialoginterface dialog, int which) { 8 dialog cancel(); 9 // don't forget to change the line below with the names of your activities 10 intent intent = new intent(signupactivity this, logoutactivity class); 11 intent addflags(intent flag activity clear task | intent flag activity new task); 12 startactivity(intent); 13 } 14 }); 15 alertdialog ok = builder create(); 16 ok show(); 17 }1 private fun showalert(title string, message string) { 2 val builder = alertdialog builder(this) 3 settitle(title) 4 setmessage(message) 5 setpositivebutton("ok") { dialog, which > 6 dialog cancel() 7 // don't forget to change the line below with the names of your activities 8 val intent = intent(this, logoutactivity class java) 9 intent addflags(intent flag activity clear task or intent flag activity new task) 10 startactivity(intent) 11 } 12 val ok = builder create() 13 ok show() 14 } 3 se connecter se connecter crée un objet session, qui pointe vers l'utilisateur connecté si la connexion est réussie, parseuser getcurrentuser() parseuser getcurrentuser() renvoie un objet utilisateur, et un objet session qui a été créé dans le tableau de bord tableau de bord sinon, si le nom d'utilisateur cible n'existe pas, ou si le mot de passe est incorrect, cela renvoie null la méthode utilisée pour effectuer l'action de connexion est parseuser logininbackground() parseuser logininbackground() , qui nécessite autant d'arguments que les chaînes de nom d'utilisateur et de mot de passe, et peut appeler une fonction de rappel remarque après l'inscription, la connexion est effectuée automatiquement pour faire fonctionner loginactivity loginactivity , suivez ces étapes importez dans votre loginactivity loginactivity , en plus des dépendances importées dans le étape 1 2\ pour implémenter la fonction de connexion utilisateur, utilisez simplement le code 1 private void login(string username, string password) { 2 progressdialog show(); 3 parseuser logininbackground(username, password, (parseuser, e) > { 4 progressdialog dismiss(); 5 if (parseuser != null) { 6 showalert("successful login", "welcome back " + username + " !"); 7 } else { 8 parseuser logout(); 9 toast maketext(loginactivity this, e getmessage(), toast length long) show(); 10 } 11 }); 12 }1 fun login(username string, password string) { 2 progressdialog? show() 3 parseuser logininbackground(username,password) { parseuser parseuser?, parseexception parseexception? > 4 progressdialog? dismiss() 5 if (parseuser != null) { 6 showalert("successful login", "welcome back " + username + " !") 7 } else { 8 parseuser logout() 9 if (parseexception != null) { 10 toast maketext(this, parseexception message, toast length long) show() 11 } 12 } 13 } 14 } dans le projet exemple, ce code est placé à l'intérieur d'un log in log in rappel de bouton de plus, le nom d'utilisateur et le mot de passe sont récupérés à l'aide de edit texts la méthode showalert showalert est la même que celle que vous avez ajoutée dans le signupactivity signupactivity , n'oubliez pas de changer ses intent intent arguments cependant 4 se déconnecter se déconnecter supprime l'objet session actif pour l'utilisateur connecté la méthode utilisée pour se déconnecter est parseuser logoutinbackground() parseuser logoutinbackground() pour implémenter la déconnexion de l'utilisateur, utilisez simplement le code ci dessous, dans le logoutactivity logoutactivity 1 parseuser logoutinbackground(e > { 2 progressdialog dismiss(); 3 if (e == null) 4 showalert("so, you're going ", "ok bye bye then"); 5 });1 fun login(username string, password string) { 2 progressdialog? show() 3 parseuser logininbackground(username,password) { parseuser parseuser?, parseexception parseexception? > 4 progressdialog? dismiss() 5 if (parseuser != null) { 6 showalert("successful login", "welcome back " + username + " !") 7 } else { 8 parseuser logout() 9 if (parseexception != null) { 10 toast maketext(this, parseexception message, toast length long) show() 11 } 12 } 13 } 14 } dans le projet exemple, ce code est placé à l'intérieur d'un bouton de déconnexion bouton de déconnexion callback la méthode showalert showalert est la même que celle que vous avez ajoutée dans le loginactivity loginactivity et signupactivity signupactivity , n'oubliez pas de changer ses arguments intent arguments intent 5 testez votre application exécutez votre application et créez quelques utilisateurs, essayez également de vous reconnecter après les avoir enregistrés connectez vous à site web de back4app trouvez votre application et cliquez sur tableau de bord tableau de bord > noyau noyau > navigateur navigateur > utilisateur utilisateur à ce stade, vous devriez voir vos utilisateurs comme affiché ci dessous remarque en utilisant les codes affichés ci dessus, chaque fois que vous vous connectez avec un utilisateur, une session session est ouverte dans votre tableau de bord tableau de bord , mais lorsque l'utilisateur se déconnecte, cette session session se termine de plus, chaque fois qu'une tentative de connexion ou d'inscription échoue, la session session ouverte dans le serveur parse tableau de bord tableau de bord est supprimée c'est fait ! félicitations ! maintenant, vous pouvez vous connecter, vous inscrire ou vous déconnecter de votre application en utilisant les fonctionnalités de base de parse server via back4app !