1、Message 类,增加 Arraylise<Message>属性,MessageType 类增加离线消息类型
private ArrayList<Message> arrayList;
String MESSAGE_OFFLINE = "10";//离线消息类型
2、发送方用户正常发送消息
3、服务器判断接收方用户是否在线,若接收方不在线,将消息存入离线服务器
i. 先建立离线数据库,并增加将离线消息存入服务器方法 addToDbServer、从离线服务器删除消息方法 deleteDbServerMes、离线服务器将离线消息发往用户方法 sendOfflineMes 和 判断用户当前是否在先方法 isOnline。
public class OfflineMes { private static ConcurrentHashMap<String, ArrayList<Message>> dbServer = new ConcurrentHashMap<>(); public static ConcurrentHashMap<String, ArrayList<Message>> getDbServer() { return dbServer; } public static void setDbServer(ConcurrentHashMap<String, ArrayList<Message>> dbServer) { OfflineMes.dbServer = dbServer; } //addToDbServer public static void addToDbServer(String userId, Message message) { if (!dbSer