How to know if devices is connected to network?

This is a decade old thread, but here’s a method for 2024 and Unreal Engine 5 and if you are on a Desktop PC or Mac (haven’t tried other platforms).

  1. Add “HTTP” to your build.cs file.
  2. Add the following headers to your class:
#include "HttpModule.h"
#include "Interfaces/IHttpRequest.h"
#include "Interfaces/IHttpResponse.h"
#include "Http.h"
  1. The following code should work:
void YourClass::CheckInternetConnection()
{
	TSharedRef<IHttpRequest, ESPMode::ThreadSafe> HttpRequest = FHttpModule::Get().CreateRequest();
	HttpRequest->OnProcessRequestComplete().BindUObject(this, &YourClass::OnInternetResponseReceived);
	HttpRequest->SetURL("https://www.google.com");
	HttpRequest->SetVerb("GET");
	HttpRequest->ProcessRequest();
}

void YourClass::OnInternetResponseReceived(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful)
{
	if (bWasSuccessful && Response->GetResponseCode() == 200)
	{
		UE_LOG(LogTemp, Warning, TEXT("Internet connection is available"));
		// Add any additional actions here for a successful connection
	}
	else
	{
		UE_LOG(LogTemp, Warning, TEXT("No internet connection"));
		// Add any additional actions here for a failed connection
	}
}
2 Likes