18034727885
2026-07-01 bb518e8e8e7c6dc5c23476170f7901ad6a69de3c
修复问题
1个文件已修改
47 ■■■■■ 已修改文件
rxnetty/src/main/java/cn/sinata/rxnetty/CoreService.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rxnetty/src/main/java/cn/sinata/rxnetty/CoreService.java
@@ -29,6 +29,7 @@
import io.reactivex.netty.channel.ObservableConnection;
import rx.Observable;
import rx.Subscriber;
import rx.android.schedulers.AndroidSchedulers;
import rx.functions.Action1;
import rx.functions.Func1;
import rx.schedulers.Schedulers;
@@ -283,36 +284,28 @@
    private void reConnect() {
        if (isDestroy) {
//            String s = CacheUtil.get().getAsString("reConnect");
//            s = s + "###"+ "server已死";
//            CacheUtil.get().put("reConnect",s);
            return;
        }
        //reconnect
//        String s = CacheUtil.get().getAsString("reConnect");
//        s = s + "###"+ "倒计时3秒";
//        CacheUtil.get().put("reConnect",s);
        Observable.timer(3, TimeUnit.SECONDS).subscribe(new Action1<Long>() {
            @Override
            public void call(Long aLong) {
//                String s = CacheUtil.get().getAsString("reConnect");
//                s = s + "###"+ "倒计时结束";
//                CacheUtil.get().put("reConnect",s);
                if (mConnection != null) {
                    mConnection.close();
                    mConnection = null;
                }
                Log.i("CoreService", "sendHeart_websocket长连接断开,重新连接");
                connectServer();
            }
            @Override
            protected void finalize() throws Throwable {
                super.finalize();
            }
        });
        Observable.timer(3, TimeUnit.SECONDS)
                .subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(new Action1<Long>() {
                    @Override
                    public void call(Long aLong) {
                        if (mConnection != null) {
                            mConnection.close();
                            mConnection = null;
                        }
                        Log.i("CoreService", "sendHeart_websocket长连接断开,重新连接");
                        connectServer();
                    }
                }, new Action1<Throwable>() {
                    @Override
                    public void call(Throwable throwable) {
                        throwable.printStackTrace();
                    }
                });
    }