Cloud Firestore 之二部曲,資料新增讓你的 APP 馬上成為雲端應用

作者 | 2017-11-14

在上一篇  使用 Android Studio 3 開發新世代旗艦雲端資料庫 Cloud Firestore 之首部曲,類別庫導入與設定 後,可以直接在 Android APP 中對 Firestore 進行資料新增、查詢,它像是原 Firebase 中的即時資料庫,未來能夠支援更多的語言,與更豐富的應用。

初始化

你的 APP 在使用 Firestore 之前需要進行連結到 Firestore,這個初使化的工作由 FirebaseFirestore 類別完成:

之後,可使用這個物件 (db) 操作資料,可以寫在 Activity 的 onCreate 方法中,若有多個 Activity 都需要用到 Firestore,可考慮寫在 Application 類別中。

新增資料

使用 Java 的 Map 類別收集一筆資料的各個屬性後,呼叫 FirebaseFirestore 的 collection 方法指定資料集合的名稱後,在這個資料集合中加入一筆資料。下圖為加入一本書籍的範例:

呼叫 collection 方法可得到 CollectionReference 物件,再呼叫其 add 方法即可傳入一個 Map 物件,並將這個物件集合新增進 Firestore 中,上例為了得到儲存的結果,使用 addOnCompleteListener 指派一個完成工作的傾聽器,可在工作完成後檢驗是工作是否正常完成。

執行後 LogCat 輸出如下,成功新增一本書籍資料:

回到 Firestore 主控台中,該筆資料也成功儲存在雲端,如下圖:

實作 APP 功能

接著新增一個新的 Activity,名稱為 AddBookActivity,如下:

AddBookActivity 是一個新增書籍的畫面,使用 ConstraintLayout 設計以下的畫面元件與配置,如下圖:

ConstraintLayout 是目前 Android 最重要也最受好評的版面配置,一定要熟練它,可參考先前文章:

Layout新成員ConstraintLayout,終於向iOS的AutoLayout看齊

打鐵趁熱,使用ConstraintLayout設計登入畫面

Layout新成員ConstraintLayout,組織要扁平化,Layout也要扁平化?

使用這個介面再多新增幾筆書籍資料,最後 books 資料集合中有三筆書籍資料,如下圖:

不需要 Server 端用 Node.js、JSP、PHP 或 .NET 等技術,也不需要準備如 MySQL、SQL Server 等資料伺服器,幾個簡單的設計就讓你的 APP 具備雲端服務的應用。

Cloud Firestore 之三部曲,設計資料類別(Model)快速新增複雜資料

相關文章:

Category: 8.0 Oreo Android Studio 3 Firestore 標籤:, ,

關於 Hank Tom

專長為程式語言、雲端服務開發,Linux系統管理, 任職:利拓科技 技術長,海林行動科技 技術總監 輔仁大學 兼任助理教授 ,為 Android高效入門>深度學習、CentOS 7建置、管理與伺服器架設實戰、Java網路程式設計、雲端網頁程式設計-Google App Engine應用實作 等書作者

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *