2016-12-08 2 views
1

Я работаю над приложением для Android, которое включает Quickblox. Я продолжаю получать сообщение «Отключение чата». При чтении LogCat, это то, что я получаю:Quickblox Chat connection drop при чате в android

12-08 11: 15: 31,214 13894-14722/com.quickblox.sample W/AbstractXMPPConnection: Соединение закрыто с ошибкой java.net.SocketTimeoutException: Прочитайте вычеркнутый на com.android.org.conscrypt.NativeCrypto.SSL_read (собственный метод) на com.android.org.conscrypt.OpenSSLSocketImpl $ SSLInputStream.read (OpenSSLSocketImpl.java:705) на java.io.InputStreamReader. read (InputStreamReader.java:233) на java.io.BufferedReader.read (BufferedReader.java:325) на org.jivesoftwar e.smack.util.ObservableReader.read (SourceFile: 41) at org.kxml2.io.KXmlParser.fillBuffer (KXmlParser.java:1515) at org.kxml2.io.KXmlParser.peekType (KXmlParser.java:992) at org.kxml2.io.KXmlParser.next (KXmlParser.java:349) at org.kxml2.io.KXmlParser.next (KXmlParser.java:313) at org.jivesoftware.smack.tcp.XMPPTCPConnection $ PacketReader. parsePackets (ИСЙ: 1240) в org.jivesoftware.smack.tcp.XMPPTCPConnection $ PacketReader.access $ 300 (ИСЙ: 1014) в org.jivesoftware.smack.tcp.XMPPTCPConnection $ PacketReader $ 1.run (SourceFile: 1029) в java.lang.Thread.run (Thread.java:818) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample D/SMACK: XMPPConnection закрыт из-за исключения (0) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: java.net.SocketTimeoutException: время ожидания чтения: 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at com.android.org.conscrypt.NativeCrypto. SSL_read (Native Method) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at com.android.org.conscrypt.OpenSSLSocketImpl $ SSLInputStream.read (OpenSSLSocketImpl.java:705) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at java.io.InputStreamReader.read (InputStreamReader.java:233) 12-08 11: 15: 31.216 13894- 14722/com.quickblox.sample W/System.err: at java.io.BufferedReader.read (BufferedReader.java:325) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at org.jivesoftware.smack.util.ObservableReader.read (SourceFile: 41) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at org.kxml2.io.KXmlParser.fillBuffer (KXmlParser.java:1515) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System. err: at org.kxml2.io.KXmlParser.peekType (KXmlParser.java:992) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at org.kxml2.io. KXmlParser.next (KXmlParser.java:349) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at org.kxml2.io.KXmlParser.next (KXmlParser.java:313) 12-08 11: 15: 31.216 13894-14722/com.quickblox.sample W/System.err: at org.jivesoftware.smack.tcp.XMPPTCPConnection $ PacketReader.parsePackets (SourceFile: 1240) 12-08 11: 15: 31,216 13894-14722 /com.quickblox.sample W/System.err: at org.jivesoftware.smack.tcp.XMPPTCPConnection $ PacketReader.access $ 300 (SourceFile: 1014) 12-08 11: 15: 31.217 13894-14722/com.quickblox.sample W/System.err: at org.jivesoftware.smack.tcp.XMPPTCPConnection $ PacketReader $ 1.run (SourceFile: 1029) 12-08 11: 15: 31.217 13894-13894/com.quickblox.sample I/VerboseQbChatConnectionListener: connectionClosedOnError (): Время ожидания: 12-08 11: 15: 31.217 13894-14722/com.quickblox.sample W/System.err: at java.lang.Thread.run (Thread.java: 818)

Я не могу найти решение для этого же.

ответ

1

Сокет - это то, что вы используете для связи по сети (например, для подключения к серверу в Интернете). Сообщение об ошибке означает, что программа пыталась получить данные с удаленного компьютера по сети, но никаких данных не было получено в течение определенного периода времени, поэтому программа перестала ждать получения данных.

Вот фрагмент кода, который может решить эту проблему, увеличив время ожидания Socket по умолчанию SocketTimeOut в Quickblox составляет 30 секунд.

QBChatService.ConfigurationBuilder chatServiceConfigurationBuilder = new QBChatService.ConfigurationBuilder(); 
chatServiceConfigurationBuilder.setSocketTimeout(180); //Sets chat socket's read timeout in seconds 
chatServiceConfigurationBuilder.setKeepAlive(true); //Sets connection socket's keepAlive option. 
QBChatService.setConfigurationBuilder(chatServiceConfigurationBuilder); 
+0

Работал для меня .... Спасибо! –