簡單看了一下源碼的實現,這裏貼一點個人覺得比叫重要的代碼。
XmppManager.java
- 構造方法:
public XmppManager(NotificationService notificationService)
在這裏主要是從共享引用中取得xmpp服務器地址和端口號、用戶名和密碼。
- 內部類
private class ConnectTask implements Runnable
這個內部類主要實現的是連接服務器的操作。通過connection.connect();實現連接服務器。通過如下語句實現發送連接消息。
ProviderManager.getInstance().addIQProvider("notification",
"androidpn:iq:notification",
new NotificationIQProvider());
最後通過xmppManager.runTask();執行任務隊列中的任務。
- 內部類
private class RegisterTask implements Runnable
- 內部類
private class LoginTask implements Runnable