SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

MBaaSと連携するAndroidアプリを作る

MBaaSでラクラク実装! Androidアプリのユーザー登録とログイン・ログアウト機能

MBaaSと連携するAndroidアプリを作る 第2回


  • X ポスト
  • このエントリーをはてなブックマークに追加

ダウンロード StampTime_02.zip (1.0 MB)

会員認証設定について

 ユーザー登録のときに、メールアドレスを登録したのに、どこにも使ってないぞと気付かれた方はスルドイです。

会員認証設定
会員認証設定

 会員認証設定のメールによる会員認証の許可は、デフォルトでは「許可しない」になっています。ですから、ユーザー登録するとすぐに本登録されます。

 この設定を「許可する」にすると、メールによる本人確認が自動的に行われます。ユーザー登録をすると、入力したメールアドレスにメールが送信されます。そして、そのメールに記載されたリンクをたどると、ユーザーとして本登録されます。

 なりすましやいたずらを防ぐメールによる本人確認がチェックボックスの設定一つでできるのは便利ですね。「許可する」に設定して試してみてください。

signUpInBackground()のエラーコードを調べる

 ログイン・ログアウト処理やユーザー登録処理がこのように簡単に作成できるのは、開発者としてとてもうれしいのですが、NCMBがどのようなチェックをしているのかを知っておかなければなりません。そのために、非同期でユーザー登録をするsignUpInBackgroundメソッドで例外を発生させて、メッセージを確認していきます。

 例外はNCMBExceptionオブジェクトのgetMessageメソッドで調べることがことができるので、「リスト6 UserAddActivity.java」の(3)でコンソール出力させて確認します。

LogCatの出力
LogCatの出力

 たとえば、同じユーザー名のユーザーを登録しようとすると、

{"code":"E409001","error":"userName is duplication."}

というエラーが出力されました。

 パスワードを入力しないときは、

{"code":"E400003","error":"userName or password is empty."}

というエラーが出力されました。

 それから、極端な例として試してみたのですが、ユーザー名が1文字、パスワードが1文字でユーザー登録してみたら、エラーにならず登録されましたので、アプリ側で文字数のチェック処理をした方がよいように思います。

最後に

 今回はログイン・ログアウト、そしてユーザー登録処理をみてきました。NCMBのAPIは非同期処理で呼び出すことが基本です。また、ユーザー登録時に、ユーザー名やパスワードに桁数や文字種の制限を設けたいときは、独自にルールをプログラミングする必要があるようです。

 次回はデータオブジェクトの保存に進みます。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
MBaaSと連携するAndroidアプリを作る連載記事一覧

もっと読む

この記事の著者

金宏 和實(カネヒロ カズミ)

 富山県高岡市出身で在住。ソフトウェア開発者兼ライター。株式会社イーザー関西学院大学文学部仏文科卒。第一種情報処理技術者(今で言うと、応用情報技術者。第一種→ソフ開→応用と変遷したようだ)主な著書『作ればわかる!Androidプログラミング第2版 -SDK4対応-』『VS 2010で作る Web-DB アプリ入門』『ベテランが丁寧に教えてくれるデータベースの知識と実務』『はじめてのAndroidアプリ作成 センサー活用とクラウド連携』『はじめてのAndroidアプリ作成 基本プログラミング』Web連載『VB2008で楽々Webプログラミング』『再発見!VB2005快適プログラミング』 『こうしろうのMindStroms日記』 個人的なブログはこちらです。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8065 2014/09/16 19:17

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング