0.2.0版本:
由於在調試的過程中,發現原始使用的DBflow數據庫,處理的邏輯是:對數據庫的每個表設置監聽,每次在寫入或者修改數據庫的時候,會回調,回調得出的數據,再與UI的數據對比,如果對比的結果不一致,然後再修改UI中的數據。因爲我們的消息都沒一條條的發送或者是一條條的接受,所以做了一個小改進,將寫入(更新)數據庫的數據放入一個阻塞隊列中,另外一個線程去讀,然後通過設置接口回調再去更新UI。
0.3.0版本
經過連續幾天的奮戰,終於算是實現了即時通訊的功能,非第三方SDK,這個IM的功能還可以單獨抽取推送的功能。
主要用到了開源的Netty庫。在這個庫之上使用UDP,同事在UDP之上封裝了一層協議層,該層的功能是保證消息正確的發送和接受,最上層則是業務層。