У меня есть Android-приложение, которое я создаю с Unity, которое регистрирует информацию на простом http-сервере Python (размещенном на Digital Ocean Droplet).Вот моя сопрограмма для того, чтобы тыкать в сервер:
IEnumerator pokeServer()
{
Debug.Log( "Establishing Server Connectivity..." );
using( var www = UnityWebRequest.Get( ServerURL ) )
{
Debug.Log( "Send Web Request" );
ServerStatus = ConnectionStatuses.AttemptingToConnect;
yield return www.SendWebRequest();
if( www.isNetworkError || www.isHttpError )
{
if( www.isNetworkError )
{
Debug.Log( "NETWORK ERROR: " + www );
}
else
{
Debug.Log( "HTTP ERROR: " + www );
}
ServerStatus = ConnectionStatuses.Unavailable;
}
else
{
Debug.Log( "Success! Server available!" );
ServerStatus = ConnectionStatuses.Connected;
}
}
}
Если я запускаю это в редакторе Unity, все работает нормально.Я могу получить ответ от моего сервера без проблем.Если я создаю и запускаю это на Android, запрос не отправляется на мой сервер, и я не получаю сообщение об ошибке.Последняя строка в приведенном выше коде: «yield return www.SendWebRequest ();»
Я посмотрел logcat, и ошибки нет.Мой сервер никогда не получает никаких запросов.Однако, если я нажму "https://www.google.com,", я действительно получу ответ. Это заставит меня поверить, что это своего рода проблема http против https, но я не знаю, с чего начать. Этот код работает дляменя очень долго. Любой совет будет очень кстати!