Hirdetés
Új hozzászólás Aktív témák
-
Kutyauto
csendes tag
Sziasztok
okhttp cuccal csinálom hogy tudjanak kommunikálni az appok egymással egy szerveren keresztül. Secure winsock a megoldás, az ugye teljesen aszinkron.
A konnektnél azon vakarózom, hogy amikor rányom a konnektálásra és elmegy a request , akkor ugye az adott kiszolgáló vagy válaszol és akkor annak megfelelően a kliens WebsocketListenerjének az onMessage-ben kezelem a dolgot.
De az is lehet, hogy nem válaszol egyáltalán mert mondjuk nem fut.
Ilyenkor ugyanott az onFailure fut le. Ez nálam most ilyen...override fun onFailure(pwebSocket: WebSocket , t: Throwable, response: Response?) {
//Log.d(TAG, "onFailure: ${t.message} $response")
if (t.message?.startsWith("failed to connect to",true)==true) {
if (webSocket?.pnAttempt!! < 3)
{
webSocket?.pnAttempt = webSocket?.pnAttempt!! +1
webSocket?.ws_connect() // újra próbálkozik, a pnAttemptből látja hányadikszor
}
else
{
webSocket?.pnAttempt=1
webSocket?.SocketViewModel?._socketStatus?.postValue(false)
}
}
super.onFailure(pwebSocket, t, response)
}
Azt akarom belőle kihozni, hogy N próbálkozásig hívja újra és újra a konnektet. Ilyenkor a ws_connect -ben van lehetőség másik szervert választani egy listából, vagy ha elfogytak a lehetőségek, akkor vége és a státuszt Próbálkozásból Disconnectre állítom a képernyőn.Ez működik is, csak a kérdés: az onFailure response paramétere ilyenkor üres, a t: Throwable paraméter t.message tagjából tudom kitalálni, hogy konnekt hiba volt.
(t.message?.startsWith("failed to connect to",true)==true)Nincs ez helyett a szöveg helyett valami egzaktabb hibakód valahol? Már mindent széttúrtam, de én nem találtam jobbat.
Kicsit tartok tőle, hogy a szöveges érték esetleg megváltozik valamilyen környezetben és akkor elhasal.
Új hozzászólás Aktív témák
- BESZÁMÍTÁS! Asrock B450M R5 5500 16GB DDR4 512GB SSD GTX 1660 Super 6GB Zalman T3 Plus DeepCool 400W
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad T420 - i5-2G I 8GB I 160GB I DVDRW I 14" HD+ I Cam I Garancia!
- 210 - Lenovo IdeaPad 5 Pro (16ARH7) - AMD Ryzen 7 6800HS, RTX 3050Ti
- HIBÁTLAN iPhone 13 Pro 128GB Alpine Green-1 ÉV GARANCIA - Kártyafüggetlen, MS4665, 100% AKKSI
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

