如何避免Android中的会话超时

Use*_*191 11 session android jsch video-streaming

在我的Android应用程序中,我正在使用LibVLC库显示实时视频流.要连接SSH服务器,我使用过jsch库.

当我运行应用程序时,会话连接视频正常运行后.当我最小化应用程序3-4分钟,并再次恢复仍然视频运行正常.但是当我将应用程序最小化10分钟或更长时间并在恢复时它会显示session timeout消息.

OnResume()我试图创建会话createPlayer()但仍然没有工作.

我试过改变会话连接时间.

有没有办法避免会话超时很长一段时间,如30分钟.

//**编辑后**//

onResume()会话仍然连接后我检查了,错误日志说Connection reset by peer.

那是什么意思?ssh隧道是关闭的吗?如果是,如何检查ssh隧道状态?

错误日志:

十月8日至9日:52:15.268 6529-21339/com.compdigitec.libvlcandroidsample E/VLC:LIVE555 DEMUX:无法使用RTSP连接://本地主机:8554/video.ts十月8日至9日:52:15.268 6529-21339 /com.compdigitec.libvlcandroidsample d/VLC:核心解复用:没有access_demux模块匹配10月八日至九日:52:15.268 6529-21339/com.compdigitec.libvlcandroidsample d/VLC:核心输入:创建访问 'RTSP' 位置='本地主机:8554/video.ts',path ='(null)'08-09 10:52:15.268 6529-21339/com.compdigitec.libvlcandroidsample D/VLC:核心访问:寻找匹配"rtsp"的访问模块:15名候选人十月8日至9日:52:15.268 6529-21339/com.compdigitec.libvlcandroidsample d/VLC:核心接入:净:连接到本地主机端口8554 10月8日至九日:52:15.278 6529-21339/com.compdigitec.libvlcandroidsample d/VLC:核心访问:连接成功(socket = 36)08-09 10:52:35.823 6529-21339/com.compdigitec.libvlcandroidsample E/VLC:核心访问:读取错误:连接重置由对等08-09 10:52: 35.823 6529-21339/com.compdigitec.libvlcandroidsample D/VLC :access_realrtsp访问:RTSP连接十月8日至9日:52:35.823 6529-21339/com.compdigitec.libvlcandroidsample W/VLC:access_realrtsp访问:支持现在十月8日至9日唯一真正/螺旋RTSP服务器:52:35.823 6529-21339 /com.compdigitec.libvlcandroidsample d/VLC:核心接入:没有访问模块相匹配10月8日至9日:52:35.823 6529-21339/com.compdigitec.libvlcandroidsample E/VLC:核心输入:开放的rtsp的://本地主机:8554 /video.ts'失败10月8日至9日:52:35.823 6529-21339/com.compdigitec.libvlcandroidsample E/VLC:核心输入:您的输入无法打开10月8日至9日:52:35.823 6529-21339/COM .compdigitec.libvlcandroidsample E/VLC:核心输入:VLC无法打开MRL'rtsp:// localhost:8554/video.ts'

Ben*_*mer 1

您遇到的多路分配错误发生在堆栈的更高级别。您需要首先验证底层 SSH 连接是否仍然良好。为此,请在应用程序恢复时检查并在必要时重新连接:

public void onResume() {
    if (!session.isConnected()) {
        reconnect(); // needs to create a new session, open a channel, etc.
    }
}
Run Code Online (Sandbox Code Playgroud)

验证 SSH 连接后,您应该能够通过 LibVLC 恢复流。但是,如果此时您仍然看到错误,则必须显示用于打开/恢复流的代码。