Skip to content
This repository has been archived by the owner on Apr 1, 2024. It is now read-only.

NIFCLOUD-mbaas/KotlinSegmentUserApp

 
 

Repository files navigation

【Android】ユーザー情報を更新してみよう! for Kotlin

画像01

概要

  • ニフクラ mobile backend の『会員管理機能』を利用してAndroidアプリにログイン機能を実装し、ユーザー情報を更新するサンプルプロジェクトです
  • 簡単な操作ですぐに ニフクラ mobile backend の機能を体験いただけます

ニフクラ mobile backendって何??

スマートフォンアプリのバックエンド機能(プッシュ通知・データストア・会員管理・ファイルストア・SNS連携・位置情報検索・スクリプト)が開発不要、しかも基本無料(注1)で使えるクラウドサービス!

注1:詳しくはこちらをご覧ください

画像02

動作環境

  • MacOS Monterey version 12.5
  • Android Studio Chipmunk | 2021.2.1 Patch 2
  • Pixel 2 - Android 13 (Simulator)
  • Kotlin SDK v0.1.1

※上記内容で動作確認をしています

作業の手順

1. ニフクラ mobile backend の会員登録・ログインとアプリの新規作成

  • 下記リンクから会員登録(無料)をします
  • 登録ができたら下記リンクからログインします
  • 下図のように「アプリの新規作成」画面が出るのでアプリを作成します
    • 既に mobile backend を利用したことがある方は左上の「+新しいアプリ」をクリックすると同じ画面が表示されます

画像03

  • アプリ作成されるとAPIキー(アプリケーションキーとクライアントキー)が発行されます
  • この2種類のAPIキーはこの後ダウンロードするサンプルアプリと ニフクラ mobile backend を紐付けるため、あとで使います。

画像04

  • 動作確認後に会員情報が保存される場所も確認しておきましょう

画像05

2. サンプルプロジェクトのダウンロード

  • 下記リンクをクリックしてプロジェクトをダウンロードします
  • https://github.com/NiFCloud-mbaas/KotlinSegmentUserApp/archive/master.zip
  • ダウンロードしたプロジェクトを解凍します
  • AndroidStudio を開きます、「Open an existing Android Studio projct」をクリックして解凍したプロジェクトを選択します
  • プロジェクトが開かれます

画像06

3. SDKの導入(実装済み)

※このサンプルアプリには既にSDKが実装済み(下記手順)となっています。(ver.0.1.1)
 最新版をご利用の場合は入れ替えてご利用ください。

  • SDKダウンロード SDKはここ(SDK リリースページ)から取得してください.
    • NCMB.jarファイルがダウンロードします。
  • SDKをインポート
    • app/libsフォルダにNCMB.jarをコピーします
  • 設定追加
    • app/build.gradleファイルに以下を追加します
dependencies {
    implementation 'com.squareup.okhttp3:okhttp:4.8.1'
    implementation 'com.google.code.gson:gson:2.3.1'
    api files('libs/NCMB.jar')

    //同期処理を使用する場合はこちらを追加していただく必要があります
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9'
}
  • androidManifestの設定
    • タグの直前に以下のpermissionを追加します
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

4. APIキーの設定

  • AndroidStudio で MainActivity.kt を開きます
    • ディレクトリはデフォルトで「Android」が選択されていますので、「Project」に切り替えてから探してください

画像14

  • APIキー(アプリケーションキーとクライアントキー)の設定をします

画像07

  • それぞれYOUR_APPLICATION_KEYYOUR_CLIENT_KEYの部分を書き換えます
    • このとき、ダブルクォーテーション(")を消さないように注意してください!
  • 書き換え終わったら保存してください
    • Windowsの場合、Ctrl + Sで保存できます。
    • Macの場合、command + Sで保存できます。

5.動作確認

  • エミュレーターでアプリをビルドします
  • 失敗する場合は一度「Clean Project」を実行してから再度ビルドしてください
  • アプリが起動したら、Login画面が表示されます
  • 初回は No account yet? Create one リンクをクリックして、新規会員登録を行います

画像08

  • User NamePasswordを2つ入力して「CREATE ACCOUNT」ボタンをタップします
  • 会員登録が成功するとログインされ、下記ユーザー情報の一覧が表示されます
  • SignUpに成功すると ニフクラ mobile backend 上に会員情報が作成されます!

画像09

  • ログインに失敗した場合はアラートでログイン失敗を表示します

新しいフィールドの追加

  • 新しいフィールドの追加をしてみましょう
    • 例として"favorite" というフィールドを作り、中身には "music" と入れてみます
  • 編集が完了したら更新ボタンをタップして下さい

画像10

  • 更新後、リストビューが自動でリロードされ、追加・更新が行われていることが確認できます
  • 追加したフィールドは後から編集することも可能です

画像11

  • ニフクラ mobile backend の管理画面上で、会員データの更新ができていることを確認してみましょう

画像12

  • (参考)ActionBar右上側メニューから「Logout」を押すとログアウトが出来ます

画像13

ロジック紹介

会員登録

SignupActivity.kt

//NCMBUserのインスタンスを作成
val user = NCMBUser()
//ユーザ名を設定
user.userName = name
//パスワードを設定
user.password = password
//設定したユーザ名とパスワードで会員登録を行う
try {
    user.signUp()
    
}
catch(e: NCMBException){
    //会員登録時にエラーが発生した場合の処理
}

ログイン

LoginActivity.kt

try {
    var user = NCMBUser()
    user.userName = name
    user.password = password

    user.login(user.userName,user.password)
    // ログイン成功時の処理

} catch (e: NCMBException) {
    // ログイン失敗時の処理
}

会員情報の取得

MainActivity.kt

// カレントユーザ情報の取得
val user = NCMBUser()
val userInfo = user.getCurrentUser()
try {
    var rs = userInfo.fetch();
    // ユーザー情報の取得が成功した場合の処理
} catch(e:NCMBException){
  // ユーザー情報の取得が失敗した場合の処理
}

参考

サンプルコードをカスタマイズすることで、様々な機能を実装できます! データ保存・データ検索・会員管理・プッシュ通知などの機能を実装したい場合には、以下のドキュメント(for Java)もご参照ください。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 100.0%