ぬるぽ

ゆるくプログラミングなどを語っていくブログ

Androidアプリ開発でFirebaeのRealtime Databaseを使ってみた(カスタムオブジェクトの受け渡し)

こんにちはmorimoriです。

 

前回はプリミティブ型を引数に使った、簡単なFirebaeのRealtime Databaseの使い方を書きましたが、今回は独自に作成したカスタムオブジェクトを引数に使ってデータベースと受け渡しする方法をメモして起きます。

nooootion.hatenablog.com

Realtime Databaseの構造としてはこんな感じで、ログインしたユーザ情報をひとまとめにした構造になっています。これをプログラムで更新します。

f:id:nooootion:20180404224914p:plain

 

今回は画面のテキストボックスに入力した文字を、登録ボタンを押すとRealtime Databaseの値が更新できるようにします。

DatabaseReferenceを作成する際に、ルートタグになる"users"を指定してインスタンスを作成しています。各要素の値を取得する場合はこの"users"を基準として子ノードを辿ってデータにアクセスする流れになります。

f:id:nooootion:20180404225108p:plain

Userという引数用のクラスを作成して渡しています。

f:id:nooootion:20180404225733p:plain

何故かKotlinで作成していますが、クラス名にディテクティブを宣言して、空のコンストラクタを宣言します。Javaで作成する際もやり方は変わらないです。

実行 !!!!

f:id:nooootion:20180404230504p:plain

ちゃんとデータが更新されました。素晴らしいですね。

f:id:nooootion:20180404230141p:plain

Android でのデータの読み取りと書き込み  |  Firebase Realtime Database  |  Firebase