Насколько я знаю, Unity не поддерживает какой-либо способ получения времени, которое нельзя изменить на локальном устройстве.Я думаю, что лучшим решением для этого было бы запустить небольшой скрипт php, чтобы узнать время, используя формат date () .
<?php echo "Today is " . date("Y/m/d");>
, который будет возвращать местное время
Затем вы можете получить эти данные, используя WWW класс
public static IEnumerator GetTimeStamp(string url, RequestCompletedCallback callback)
{
UnityWebRequest www = UnityWebRequest.Get(url);//url would be where the php script is hosted
www.SendWebRequest();
while (!www.isDone)
{
if (www.isNetworkError || www.isHttpError)
{
throw new System.ArgumentException("Web request failed: ", www.error);
}
yield return null;
}
// Store results in a string
if (callback != null)
{
string result = www.downloadHandler.text;
}
www.Dispose();
}
Другим решением будет использование API, который возвращает даты, такие как timezonedb или timeanddate