国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
XMPP 中客戶(hù)端斷線(xiàn)及網(wǎng)絡(luò)異常處理

1.網(wǎng)上關(guān)于網(wǎng)絡(luò)斷線(xiàn)這個(gè)問(wèn)題的處理的資料確實(shí)很少。有寫(xiě)說(shuō)在Mina的框架里修改Session close.但都沒(méi)有給出相關(guān)的處理。對(duì)于一個(gè)不是深入了解那框架的人,確實(shí)是件不容易的事情。

2.下面給出一個(gè)自己的處理方案.

就是利用Connection的ConnectionListener.

下面是具體寫(xiě)法

mConnection.addConnectionListener(new ConnectionListener() {
            //當(dāng)網(wǎng)絡(luò)斷線(xiàn)了,重新連接上服務(wù)器觸發(fā)的事件
            @Override
            public void reconnectionSuccessful() {
                // TODO Auto-generated method stub
                System.out.println("reconnectionSuccessful");
                 
            }
            //重新連接失敗
            @Override
            public void reconnectionFailed(Exception arg0) {
                // TODO Auto-generated method stub
                System.out.println("reconnectionFailed");
                 
            }
            //重新連接的動(dòng)作正在進(jìn)行的動(dòng)作,里面的參數(shù)arg0是一個(gè)倒計(jì)時(shí)的數(shù)字,如果連接失敗的次數(shù)增多,數(shù)字會(huì)越來(lái)越大,開(kāi)始的時(shí)候是14
            @Override
            public void reconnectingIn(int arg0) {
                System.out.println("time: "+arg0);
                // TODO Auto-generated method stub
                System.out.println("reconnectingIn");
                 
            }
            //這里就是網(wǎng)絡(luò)不正常斷線(xiàn)激發(fā)的事件
            @Override
            public void connectionClosedOnError(Exception arg0) {
                // TODO Auto-generated method stub
                System.out.println("connectionClosedOnError");
                 
            }
            //這里是正常關(guān)閉連接的事件
            @Override
            public void connectionClosed() {
                // TODO Auto-generated method stub
                System.out.println("connectionClosed");
                 
            }
        });

  不是像上面那樣,add了一個(gè)Listener搞定了,你要觸發(fā)這個(gè)listener就要在你想判斷聯(lián)網(wǎng)是否正常的時(shí)候,使用一下XMPPConnection.isConnected()這個(gè)方法。

他就會(huì)自動(dòng)檢測(cè)這個(gè)Connection并且處理Listener里面的事件

可以寫(xiě)一個(gè)線(xiàn)程來(lái)專(zhuān)門(mén)檢測(cè)比如:

new Thread(){
            public void run() {
                while(true){
                    try {
                        sleep(3*1000);
                        System.out.println("thread  info con: "+mConnection.isConnected());
                 
                    } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
            };
        }.start();

  這就是3秒檢測(cè)一下,就不用去修改Openfire了,Connection默認(rèn)的情況下是會(huì)自動(dòng)連接上去的。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Android開(kāi)發(fā)心得
Android ViewPager 實(shí)現(xiàn)多個(gè)頁(yè)面切換滑動(dòng)
Android游戲開(kāi)發(fā)框架Libgdx的學(xué)習(xí)(一)—— 第一個(gè)Libgdx程序
android service
制作按鈕
java監(jiān)聽(tīng)器的原理與實(shí)現(xiàn)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服