Unity GPS местоположение на Android редко обновляется - PullRequest
0 голосов
/ 15 апреля 2019

В приложении для единства я запускаю службу определения местоположения

Input.location.Start(0,0); //tried various other values and default

, а затем постоянно опрашивать его как

Input.location.lastData

и сравните метку времени с меткой времени последнего местоположения, чтобы увидеть изменения. Unity автоматически запрашивает точный доступ к местоположению, и манифест кажется нормальным.

Проблема в том, что местоположение очень редко обновляется. Может быть целых несколько километров движения и минут времени между новыми локациями. Если я затем запусту навигацию по Google Maps, которая также использует GPS, мое приложение будет получать новые местоположения GPS очень часто, как и ожидалось.

Кажется, что Unity действительно не включает gps, но кроме запуска, опроса и правильного манифеста, я не вижу, что еще я могу сделать.

Этот минимальный пример показывает медленное обновление. Приложение, содержащее только текст пользовательского интерфейса и работающее в этом режиме, покажет, что местоположение GPS редко обновляется, если только какое-либо другое приложение, например навигация по Google Maps, не использует GPS.

using UnityEngine;

public class NewBehaviourScript : MonoBehaviour
{
    public UnityEngine.UI.Text Info;
    void Start()
    {
        Input.location.Start(0.1f, 0.1f);
    }
    void Update()
    {
        Info.text = 
            Input.location.status.ToString() + System.Environment.NewLine +
            Input.location.lastData.timestamp.ToString();
    }
}

1 Ответ

0 голосов
/ 15 апреля 2019

Для справки нашел решение, которое глупо: отключить "улучшение" местоположения с помощью wifi.

В настройках / locationaccess внизу, в разделе "Точность определения местоположения Google", отключите "сделать местоположение более точным с помощью Wi-Fi".

В то время как я просил точное местоположение с обновлениями даже после самого маленького движения, очевидно, что это более точное местоположение, дополненное Wi-Fi, заставляет его не обновляться.

Это скорее задом наперед, поскольку это, по-видимому, означает, что он будет только использовать Wi-Fi, когда вы позволите ему улучшить местоположение с помощью Wi-Fi, а не так, как ожидается, использовать GPS и Wi-Fi .

Когда это отключено, я получаю частые обновления, как и ожидалось.

Если это проблема единства или андроида, это неясно, но это, безусловно, проблема, хотя и решаемая, если вы о ней знаете.

...