谷歌在 2016年 I/O 大會上推出了 Firebase 的新版本。Firebase 平臺提供了為移動端(iOS和Android)和 Web 端創(chuàng)建后端架構(gòu)的完整解決方案。
從一開始的移動后端即服務(wù)(Mobile-Back-end-as-a-Service,簡稱 MBaas),F(xiàn)irebase 已經(jīng)被谷歌改造成了針對移動開發(fā)和 Web 開發(fā)的一個完整后端解決方案。Firebase 提供了一個 SDK 和 一個控制臺,用于創(chuàng)建和管理 Android、iOS和 Web 等多個平臺的應(yīng)用。Firebase 擁有以下特性:
AdMob —— 集成了谷歌 AdMob AdWords —— 集成了谷歌 AdWords 統(tǒng)計分析(Analytics) —— 用于監(jiān)控用戶行為、人群特征細分、活動效果分析 崩潰報告(Crash Reporting) —— 監(jiān)控各類設(shè)備上應(yīng)用的錯誤。與統(tǒng)計分析特性集成,評估應(yīng)用崩潰時的用戶行為 數(shù)據(jù)庫 —— 用于存儲 JSON 數(shù)據(jù)的 NoSQL 數(shù)據(jù)庫 動態(tài)鏈接(Dynamic Links) —— 將用戶帶至應(yīng)用內(nèi)預(yù)期頁面的深度鏈接(deep links) 托管(Hosting) —— 針對 Web 應(yīng)用的全球 CDN 索引(Indexing) —— 對應(yīng)用進行索引,用于谷歌搜索 邀請(Invites) —— 支持用戶與其他用戶分享有關(guān)應(yīng)用的信息 消息(Messaging) —— 即此前的 Google Cloud Messaging,后來被重新命名為 Firebase Cloud Messaging 通知(Notifications) —— 管理發(fā)給用戶的通知 離線(Offline) —— 支持應(yīng)用在本地緩存中存儲數(shù)據(jù),這樣可以在離線時保持運行 實時(Real Time) —— 數(shù)據(jù)實時保存至云數(shù)據(jù)庫 遠程配置(Remote Config) —— 支持開發(fā)者在不要求用戶下載新版本 app 的情況下,修改應(yīng)用的行為和外觀。該特性用于修改應(yīng)用的視覺主題,滿足不同用戶群組的需求,運行 A/B 測試等。 存儲(Storage) —— 存儲用戶的語音、圖片和視頻 同步(Synchronization) —— 當(dāng)設(shè)備上的數(shù)據(jù)變動時,將會推送至 Firebase,然后再推回到所有相關(guān)聯(lián)的設(shè)備。另外,離線后重新在線使用時,設(shè)備將自動更新至最近的快照 測試實驗室(Test Lab) —— 在真實設(shè)備上測試應(yīng)用以上所有特性在進行 Android 和 iOS 開發(fā)時均可使用,除了測試實驗室不支持 iOS 設(shè)備。部分特性尚不支持 Web 應(yīng)用。
Firebase SDK 支持以 C++、Java、JavaScript、JavaScript/Node.js、Objective-C 和 Swift 等語言進行編程。對 Angular、Backbone、Ember 和 React 的支持通過對數(shù)據(jù)庫的綁定實現(xiàn)。谷歌提供了一些輔助開發(fā)庫:Firebase UI、Geofire、Firebase Queue、FirebaseJobDispatcher。這些庫的名稱說明了各自的用途。Firebase 還支持導(dǎo)入大規(guī)模 JSON 數(shù)據(jù)集,可與 ElasticSearch 集成。
Firebase 由谷歌維護,托管在其云數(shù)據(jù)中心。對于想體驗的用戶,F(xiàn)Irebase 提供了免費的計劃。同時提供了一個按需付費計劃,提供與谷歌云平臺的全面集成。
如果你想深入了解 Firebase 的運作,我們建議觀看谷歌 2016 I/O 大會上的這些視頻:Firebase 概覽