Android
Users
Benutzerregistrierung & Login mit Android und Parse Server
16 min
login und benutzerregistrierung tutorial einführung in diesem abschnitt werden wir uns ansehen, wie man eine app mit einer einfachen benutzerregistrierung erstellt, indem man parse server kernfunktionen über back4app dieses tutorial verwendet eine grundlegende app, die in android studio 4 1 1 mit buildtoolsversion=30 0 2 buildtoolsversion=30 0 2 , compile sdk version = 30 0 2 compile sdk version = 30 0 2 und targetsdkversion 30 targetsdkversion 30 jederzeit können sie auf das vollständige android projekt zugreifen, das mit diesem tutorial erstellt wurde, in unseren github repositories kotlin beispiel repository java beispiel repository ziel wir werden lernen, wie man sich anmeldet und registriert, indem man parse verwendet hier ist eine vorschau darauf, was wir erreichen werden voraussetzungen um dieses tutorial abzuschließen, benötigen wir android studio eine app, die auf back4app erstellt wurde hinweis befolgen sie das tutorial für neue parse apps , um zu lernen, wie man eine parse app auf back4app erstellt eine android app, die mit back4app verbunden ist hinweis befolgen sie das tutorial zur installation des parse sdk um ein android studio projekt zu erstellen, das mit back4app verbunden ist ein gerät (oder virtuelles gerät ) mit android 4 1 (jelly bean) oder neuer 1 bibliothek importieren in diesem schritt werden wir die bibliotheken importieren, die wir in unserem projekt verwenden werden wir werden die folgenden parse klassen zu unseren aktivitäten hinzufügen 2\ wir werden in unserem projekt häufig lambda funktionen verwenden, deshalb müssen wir java 1 8 über build gradle(module\ app) zu unserem projekt hinzufügen um signupactivity signupactivity zum laufen zu bringen, befolgen sie diese schritte importieren sie in ihre signupactivity signupactivity , zusätzlich zu den in schritt 1 importierten abhängigkeiten 2\ um die benutzerregistrierung zu implementieren, verwenden sie einfach den folgenden code in der oncreate() oncreate() methode 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 }); im beispielprojekt befindet sich dieser code innerhalb eines anmelden anmelden button callbacks außerdem werden benutzername und passwort mit edit texts erfasst 3\ es ist interessant, eine zusätzliche methode hinzuzufügen, um alert dialoge anzuzeigen und den prozess professioneller aussehen zu lassen die folgende methode tut dies 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 einloggen das einloggen erstellt ein session objekt, das auf den angemeldeten benutzer verweist wenn das einloggen erfolgreich ist, parseuser getcurrentuser() parseuser getcurrentuser() gibt ein benutzerobjekt und ein session objekt zurück, das im dashboard dashboard andernfalls, wenn der zielbenutzername nicht existiert oder das passwort falsch ist, wird null zurückgegeben die methode, die verwendet wird, um die anmeldeaktion durchzuführen, ist parseuser logininbackground() parseuser logininbackground() , die so viele argumente benötigt wie die zeichenfolgen von benutzername und passwort und möglicherweise eine callback funktion aufruft hinweis nach der anmeldung erfolgt die anmeldung automatisch um loginactivity loginactivity zum laufen zu bringen, befolgen sie diese schritte importieren sie in ihre loginactivity loginactivity , zusätzlich zu den abhängigkeiten, die in der schritt 1 2\ um die benutzeranmeldefunktion zu implementieren, verwenden sie einfach den 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 } im beispielprojekt befindet sich dieser code innerhalb eines anmeldung anmeldung schaltflächen callbacks außerdem werden benutzername und passwort mit edit texts erfasst die methode showalert showalert ist dieselbe, die sie in der signupactivity signupactivity , vergessen sie nicht, ihre intent intent argumente zu ändern 4 abmelden das abmelden löscht das aktive sitzungsobjekt für den angemeldeten benutzer die methode, die zum abmelden verwendet wird, ist parseuser logoutinbackground() parseuser logoutinbackground() um das abmelden des benutzers zu implementieren, verwenden sie einfach den folgenden code in der 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 } im beispielprojekt befindet sich dieser code innerhalb eines abmelden abmelden schaltflächen callbacks die methode showalert showalert ist dieselbe, die sie in der loginactivity loginactivity und signupactivity signupactivity , vergessen sie nicht, die intent intent argumente zu ändern 5 testen sie ihre app führen sie ihre app aus und erstellen sie ein paar benutzer, versuchen sie auch, sich nach der registrierung erneut anzumelden melden sie sich an bei back4app website finden sie ihre app und klicken sie auf dashboard dashboard > core core > browser browser > benutzer benutzer an diesem punkt sollten sie ihre benutzer wie unten angezeigt sehen hinweis mit den oben angezeigten codes wird jedes mal, wenn sie sich mit einem benutzer anmelden, eine sitzung sitzung in ihrem dashboard dashboard , aber wenn der benutzer sich abmeldet, endet diese bestimmte sitzung sitzung außerdem wird jedes mal, wenn ein fehlgeschlagener anmelde oder registrierungsversuch erfolgt, die sitzung sitzung in parse server dashboard dashboard gelöscht es ist erledigt! herzlichen glückwunsch! jetzt können sie sich anmelden, registrieren oder sich von ihrer app abmelden, indem sie die kernfunktionen von parse server über back4app nutzen!