Почему данные с сервера не приходят в приложение на реальное устройство?

При запуске приложения отправляется запрос на сервер (который находится на компьютере локально) на получение списка постов (аналог стены в Vk). По идее, сервер должен обработать запрос и вернуть этот список постов. Но он ничего не возвращает. В LogCat никаких ошибок не выдаёт, но при дебаге, вместо ответа от сервера, приходит исключение:

((SocketTimeoutException)e).detailMessage = failed to connect to /192.168.1.35 (port 9999) from /192.168.1.33 (port 49742) after 30000ms

При попытке добавить новый пост (отправить пост на сервер методом Post), выдаёт ошибку в LogCat. Вот текст ошибки:

2021-11-02 21:17:29.025 12197-12210/ru.example E/SpellCheckerSession: ignoring processOrEnqueueTask due to unexpected mState=TASK_CLOSE scp.mWhat=TASK_CLOSE
2021-11-02 21:17:39.811 12197-12568/ru.example E/AndroidRuntime: FATAL EXCEPTION: Thread-4
    Process: ru.example, PID: 12197
    java.net.SocketTimeoutException: failed to connect to /192.168.1.35 (port 9999) from /192.168.1.33 (port 49918) after 30000ms
        at libcore.io.IoBridge.connectErrno(IoBridge.java:185)
        at libcore.io.IoBridge.connect(IoBridge.java:130)
        at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:129)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:356)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:357)
        at java.net.Socket.connect(Socket.java:616)
        at okhttp3.internal.platform.AndroidPlatform.connectSocket(AndroidPlatform.kt:63)
        at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.kt:295)
        at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:207)
        at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:226)
        at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
        at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
        at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
        at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
        at okhttp3.internal.connection.RealCall.execute(RealCall.kt:154)
        at ru.example.repository.PostRepositoryImpl.save(PostRepositoryImpl.kt:60)
        at ru.example.viewmodel.PostViewModel$save$1$1.invoke(PostViewModel.kt:54)
        at ru.example.viewmodel.PostViewModel$save$1$1.invoke(PostViewModel.kt:53)
        at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)

IP-адрес и порт указаны верно. На родном эмуляторе от android-studio указываю адрес 10.0.2.2:9999 - посты приходят. На эмуляторе Genymotion, у которого свой IP, указываю адрес 192.168.1.35:9999 - тоже приходит ответ от сервера. Не приходит ответ только на реальные устройства (Xiaomi Redmi 5 и Nexus 5X). Помогите разобраться с проблемой, пожалуйста!


Ответы (0 шт):