移動開發-第三方聊天服務,移動開發第三方聊天
移動互連網的火熱催生出一大批第三方服務,例如:
-使用者資料統計的友盟、Flurry
-遠程訊息推送服務的JPush、個推
-使用者崩潰報表收集: Crashlytics
-測試版本發布:TestFlight(已被Apple收購只做iOS)、Fir、蒲公英
這個列表可以很長很長,就像社會發展的方式一樣,隨著發展的深入和專業化,社會的分工也越來越細分。可以預感到未來的軟體開發就會想樂高積木一樣簡單,有無數的模組、組件來協助完成基礎性、通用性的功能,每個人只需要專註於自己核心模組的研發,體現出自身的特色。
好了,今天要討論的是第三方聊天服務。現在的App裡面社交性的模組越來越普遍了,於是聊天功能變成了一個必不可少的模組。那麼,應該自己做還是用第三方服務呢?我覺得取決於以下條件:
1. 聊天是不是你的核心模組?例如,QQ,很難想象這類App不自己實現聊天功能。
2. 是否有足夠的人力和時間?聊天看似簡單,想做對很難。需要採用正確的協議,要考慮行動裝置的網路情況,要研究文字、圖片、表情、視頻、音頻等等不同訊息的格式,網路掉包,離線訊息等等。要做一個能用並且用的爽的聊天功能至少是3個月以上的投入。這在移動互連網時代往往是錯過了一些機會。
3. 聊天訊息的資料是否是你的核心價值?第三方聊天服務意味著聊天的訊息資料在對方伺服器,資料的同步並不能做到即時,資料的分析也會延後,甚至很多時候聊天的訊息資料都有可能不能同步到自己的伺服器,也不能儲存長時間的聊天記錄。
如果你完全瞭解第三方聊天服務的優勢和劣勢,你可以做出正確的決定。目前市場上面第三方聊天服務也有很多,我簡單比較了下面幾個服務:
1. 環信: http://www.easemob.com/hx/index.html
2. 融云:http://www.rongcloud.cn/
3. LeanCloud: https://leancloud.cn/
功能
三個服務都是能支援iOS/Android/Web三個平台
服務 |
文本 |
表情 |
圖片 |
語音訊息 |
影像訊息 |
位置訊息 |
即時語音 |
單聊 |
群組 |
聊天室 |
客服 |
環信 |
是 |
是 |
是 |
是 |
是 |
是 |
是 |
是 |
是 |
否 |
是 |
融雲 |
是 |
是 |
是 |
是 |
否 |
是 |
是 |
是 |
是 |
是 |
是 |
LeanCloud |
是 |
是 |
是 |
是 |
是 |
是 |
否 |
是 |
是 |
否 |
否 |
價格
環信:註冊使用者300萬以下或日活30萬以下終身免費。
融云:收費功能包括聊天訊息的同步,伺服器訊息廣播,專屬伺服器。按日活使用者數來區分收費。
LeanCloud: 每天500免費活躍使用者,超出後 1 元 / 千人 / 天。
假設我們需要採用融雲的訊息同步功能,下面可以比較下不同日活使用者數的價格水平(每月):
服務 |
10萬 |
100萬 |
500萬 |
1000萬 |
環信 |
0 |
50000 |
250000 |
500000 |
融雲 |
2000 |
10000 |
20000 |
電話諮詢 |
LeanClund |
3000 |
30000 |
150000 |
300000 |
環信對小型App最為友好,完全免費的。但是隨著日活使用者數的增長,費用也是最高的。融雲的價格在大於30萬日活的情況下是最少的。LeanCloud價格置中。
整合
環信:環信與現有系統整合還是非常方便的,唯一需要的就是環信的帳號註冊。通常的流程如下:
1. 伺服器一次性將現有使用者在環信中註冊。一般的方法是採用現有的系統中UserId來註冊環信帳號,這樣不用在現有系統中維護環信的帳號ID。
2. APP建立新使用者時建立環信帳號
3. APP刪除使用者時刪除環信帳號
4. 用戶端使用SDK登陸環信,只需要瞭解對方的環信ID就可以建立聊天視窗相互連信
融云:
融雲包括兩類SDK: IMKit和IMLib。IMLib提供了一整套聊天的基礎架構,但需要開發人員整合並自行開發UI。IMKit則包含IMLib並提供聊天所需的一整套UI,對於不需要針對UI做大量定製化設計的開發人員非常友好。
融雲的整合和環信非常相似,不需要對現有系統做太多的改變,只需提供一套使用者認證的模組:
LeanCloud:
LeanCloud是一個一站式的行動裝置 App後台解決方案,提供了Storage, Message, Analysis, Module一系列的行動裝置 App後台支援,所以如果需要找到一個完整一站式解決方案,LeanCloud是個不錯的選擇。
LeanCloud的整合看起來也是相當的方便,完全不需要使用者驗證,只是需要保證ClientId在自身應用是唯一即可。不過LeanCloud不像融雲提供一整套UI,所以需要自己設計實現一些比較複雜的UI,當然LeanCloud提供了一些demo作為參考:
LeanCloud還提供一些有趣的開放資源,從中你也能看出這是家比較有趣的公司。
總之,這三家服務各有千秋,大家可以根據自己的需求好好選擇。知乎上面也有不少比較的討論:
有人用過即時通訊(IM)服務嗎?融雲 環信 雲之訊 雲通訊 LeanCloud,哪個最穩定?
最近要用到IM,比較了下LeanCloud、融雲、環信,請問LeanCloud有什麼優勢?
即時通訊除了環信之外,還有推薦的品牌嗎?