Tech iOS

iOSでFirestoreを使ってみた その2

投稿日:

はじめに

以前、Firestoreについて紹介しました。今回はリスナーを使用してドキュメントをリッスンする方法を紹介したいと思います。

リスナーのアタッチ

公式ドキュメントにある通り、リッスン(監視)したいドキュメント又はコレクションへ addSnapshotListener メソッドを使用し、リスナーをアタッチします。
以降、コンテンツに変更(追加・更新・削除)がある度に、コールバックを受け取る事が出来て、リアルタイムでアプリ側でも処理を行う事が可能となります。

ドキュメントのリッスン

具体的には以下の様にリッスンしたいドキュメントへリスナーをアタッチします。

複数ドキュメントのリッスン

同じ様にコレクションへリスナーをアタッチすると、コレクション内の全ドキュメントをリッスン出来ます。

ドキュメントの変更タイプの取得

.documentChanges でスナップショットの変更内容の種別(追加・更新・削除)を配列で取得する事が出来ます。
よって、以下の通り種別毎に処理を分ける事も可能です。

リスナーのデタッチ

リスナーをデタッチする際は、 addSnapshotListener で返却される ListenerRegistration から remove() メソッドを呼びます。

さいごに

FirestoreではサーバーレスでDBとのリアルタイム処理が簡単に実装する事が出来ます。
ぜひ一度試してみて下さい。

おすすめ書籍

詳解 Swift 第5版 [改訂新版]Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 WEB+DB PRESS plus サーバーレス開発プラットフォーム Firebase入門

blog-page_footer_336




blog-page_footer_336




-Tech, iOS
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

swift

[Swift]Schemaを使用してURLの接続先を切り替える

1 はじめに2 XCodeのBuildConfigurationとは3 スキーマとは4 スキーマの追加方法5 スキーマの設定変更6 開発と本番で異なる通信の接続先を設定する7 さいごに はじめに はじ ...

ReactNative環境構築[Android/iOS]

1 はじめに2 準備2.1 HomeBrewをインストール2.2 node.jsのインストール2.3 Watchmanのインストール2.4 React Native CLIのインストール2.5 サンプ ...

swift

SwiftでTTTAttributedLabelの文字列からリンク表示

1 はじめに2 TTTAttributedLabelとは3 CocoaPodsでインストール4 実装4.1 Labelの表示4.2 タップの検知5 さいごに はじめに こんにちは。 はじめましてnuk ...

【Unity】URP対応のAssetのPrefabがピンク色になる件

1 はじめに2 レンダリングパイプラインとは2.1 ビルトインレンダリングパイプライン2.2 ユニバーサルレンダリングパイプライン3 URPの設定手順3.1 URPのインストール3.2 URPのアセッ ...

swift

Swiftの配列、辞書関連メソッドの基本

1 はじめに2 配列(Array)2.1 filter2.2 map2.3 reduce3 辞書(Dictionary)3.1 filter3.2 map3.3 reduce4 さいごに はじめに 普 ...

フォロー

blog-page_side_responsive

2020年1月
 1234
567891011
12131415161718
19202122232425
262728293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。