做者:川哥哥php
以前我一直用融雲的接口作即時通訊,本身也摸索了一段時間以爲融雲作的挺好的。但是接口是收費的還有點小貴,就放棄融雲了決心本身搭建一個後臺。前端
在網上查資料,去學校圖書館借書發現竟然還有《30天,App開發從0到1》這本書,官方有點牛批額。最終發現Workerman這個框架能夠作即時通訊,並且還容易上手。裝好了後發現Workerman基礎框架只能作服務推送,不能實現客戶端之間相互通訊。web
而後繼續找資料發現GatewayWorker能夠實現通訊,接口都封裝好了文檔也詳細。本身把GatewayWorker環境弄好了後作了幾個簡單測試,發現客戶端之間確實能夠相互通訊,還能夠羣聊。而後就開始設計數據庫以及完善各類業務邏輯(業務邏輯代碼只能寫在Events.php裏面)。數據庫
服務器也是買的最便宜的1G的內存1M的帶寬湊合着用(百度雲服務器46元買的),服務端還沒作壓力測試不知道在線用戶多了會不會蹦!後端
手機端通過屢次測試發現原生HTML5 WebSocket以及平臺的其餘網絡通訊模塊通訊體驗不好,最終選用webSocket v1.1.2模塊和服務器進行通訊很穩定。服務器
目前app主要的功能:單聊、羣聊、好友、二維碼識別、消息數據本地存儲、消息請求驗證、意見反饋、消息收藏、微信登錄、截圖。微信
消息類型:語音、文字、表情、圖片、位置。網絡
平臺用到的模塊:webSocket、aMap、NVTabBar、db、fs、UIChatBox、FNScanner、wxPlus、trans、imageFilter、trans。app
App開發製做零零散散花了半年的時間,整體來說前端功能模塊設計要難些,不少功能比較麻煩。後端比較簡單最主要就是要把數據庫表設計好,App圖標和名字都是臨時想的。框架
如今官方推出了AVM,等空了把App轉成AVM多端版,目前還有部分功能未完善,確定還有不少bug,你們能夠下載而後用微信登錄進行測試,歡迎你們批評指正圖片。
主要功能界面截圖: