Android
Users
Android向けParseによるユーザー登録とログイン実装ガイド
17 分
ログインとユーザー登録チュートリアル イントロダクション このセクションでは、back4appを使用して、シンプルなユーザー登録を持つアプリを作成する方法を見ていきます。 parse serverのコア機能 を通じて。 このチュートリアルでは、android studio 4 1 1で作成された基本的なアプリを使用します。 buildtoolsversion=30 0 2 buildtoolsversion=30 0 2 、 compile sdk version = 30 0 2 compile sdk version = 30 0 2 と targetsdkversion 30 targetsdkversion 30 いつでも、このチュートリアルで構築された完全なandroidプロジェクトにアクセスできます。私たちのgithubリポジトリで kotlinの例リポジトリ javaの例リポジトリ 目標 parseを使用してログインと登録を行う方法を学びます。 ここに私たちが達成しようとしていることのプレビューがあります 前提条件 このチュートリアルを完了するために必要なものは android studio back4appで作成されたアプリ。 注意 新しいparseアプリのチュートリアル を参照して、back4appでparseアプリを作成する方法を学んでください。 back4appに接続されたandroidアプリ。 注意 parse sdkのインストールチュートリアル を参照して、back4appに接続されたandroid studioプロジェクトを作成してください。 android 4 1(jelly bean)以上を実行しているデバイス(または 仮想デバイス )。 1 ライブラリのインポート このステップでは、プロジェクトで使用するライブラリをインポートします 次のparseクラスをアクティビティに追加します。 2\ プロジェクトでラムダ関数を頻繁に使用するため、build gradle(module\ app)を介してjava 1 8をプロジェクトに追加する必要があります。 2 サインアップ サインアップは基本的にuserクラスに新しいparse userオブジェクトを作成し、アプリ内では「user」として表示されます ダッシュボード ダッシュボード 新しいユーザーを作成する際には、少なくとも2つのプロパティを設定する必要があります => parseuser setusername() parseuser setusername() と parseuser setpassword() parseuser setpassword() 新しいユーザーをandroidで保存するために使用されるメソッドは parseuser signupinbackground() parseuser signupinbackground() , これはコールバック関数と一緒に使用されることがあります。 注意 この特別なクラスのオブジェクトは、 ダッシュボード ダッシュボード に parseobject save() parseobject save() メソッドで保存されません。 作成するには signupactivity signupactivity を機能させるために、次の手順に従ってください インポートする あなたの signupactivity signupactivity , に加えて ステップ 1 でインポートした依存関係を追加します。 2\ ユーザー登録を実装するには、次のコードを oncreate() oncreate() メソッドに追加してください 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 }); この例のプロジェクトでは、このコードは サインアップ サインアップ ボタンのコールバック内に配置されています。 また、ユーザー名とパスワードは テキストを編集 を使用して取得されます。 3\ アラートダイアログを表示するための追加のメソッドを追加するのは興味深いことであり、プロセスをよりプロフェッショナルに見せることができます。以下のメソッドはこれを行います 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 ログイン ログインすると、セッションオブジェクトが作成され、ログインしたユーザーを指します。ログインが成功すると、 parseuser getcurrentuser() parseuser getcurrentuser() はユーザーオブジェクトを返し、 ダッシュボード ダッシュボード で作成されたセッションオブジェクトを返します。そうでない場合、ターゲットユーザー名が存在しないか、パスワードが間違っていると、nullを返します。 ログインアクションを実行するために使用されるメソッドは parseuser logininbackground() parseuser logininbackground() で、ユーザー名とパスワードの文字列と同じ数の引数が必要で、コールバック関数を呼び出すことがあります。 注意 サインアップ後、ログインは自動的に行われます。 作業を行うには、次の手順に従ってください あなたの loginactivity loginactivity にインポートします。 ステップ 1 2\ ユーザーログイン機能を実装するには、次のコードを使用します 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 } 例のプロジェクトでは、このコードは ログイン ログイン ボタンのコールバック内に配置されています。 また、ユーザー名とパスワードは edit texts を使用して取得されます。 メソッド showalert showalert は、あなたが signupactivity signupactivity に追加したものと同じです。引数の intent intent を変更するのを忘れないでください。 4 ログアウト ログアウトすると、ログインしているユーザーのアクティブなセッションオブジェクトが削除されます。ログアウトを実行するために使用されるメソッドは parseuser logoutinbackground() parseuser logoutinbackground() です。 ユーザーのログアウトを実装するには、以下のコードを使用してください。 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 } 例のプロジェクトでは、このコードは ログアウト ログアウト ボタンのコールバック内に配置されています。 メソッド showalert showalert は、あなたが loginactivity loginactivity と signupactivity signupactivity に追加したものと同じですので、 intent intent の引数を変更するのを忘れないでください。 5 アプリをテストする アプリを実行し、いくつかのユーザーを作成し、登録後に再度ログインしてみてください。 こちらからログインしてください back4appのウェブサイト アプリを見つけて、 ダッシュボード ダッシュボード > コア コア > ブラウザ ブラウザ > ユーザー ユーザー この時点で、以下のようにユーザーが表示されるはずです 注意 上記に表示されたコードを使用すると、ユーザーでログインするたびに、あなたの セッション セッション があなたの ダッシュボード ダッシュボード , しかしユーザーがログアウトすると、その特定の セッション セッション は終了します。また、ログインまたはサインアップの試行が失敗した場合、parse serverで開かれた セッション セッション は ダッシュボード ダッシュボード から削除されます。 完了しました! おめでとうございます!これで、back4appを通じてparse serverのコア機能を使用して、アプリにログイン、登録、またはログアウトできます!