Dlaczego tak
Android zabrania operacji sieciowych w wątku głównym (UI), bo blokowałyby one interfejs – dlatego zgłasza NetworkOnMainThreadException. Zapytanie trzeba przenieść do wątku tła, np. korutyny z Dispatchers.IO lub ExecutorService, a gotowe dane wyświetlić w wątku UI. Brak uprawnienia INTERNET objawia się innym błędem (SecurityException), a zmiana protokołu i limitu czasu nie usuwa przyczyny.