Android: myLocationOverlay.runOnFirstFix слишком медленно - PullRequest
2 голосов
/ 07 октября 2011

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

myLocationOverlay.runOnFirstFix(new Runnable() {
        public void run() {             
            findMe();
        }           
    });

где найти меня включает в себя:

if(myLocationOverlay.getMyLocation() != null){
    mapView.getController().animateTo(myLocationOverlay.getMyLocation());
}

Ответы [ 2 ]

1 голос
/ 13 октября 2011

Вы используете только местоположение GPS?Если вы запрашиваете текущее местоположение на основе сетевого местоположения и принимаете немного устаревшие значения (может быть, до часа?), Вы должны получить местоположение пользователя практически сразу.

1 голос
/ 07 октября 2011

Насколько я знаю, нативный сервис и приложение Maps загружаются при запуске системы и подготавливаются в фоновом режиме, что ускоряет загрузку карт. Вы можете проверить это в запущенных процессах в настройках. В облаке вы делаете то же самое или делаете грязный обходной путь, который я делал однажды: отображать диалог прогресса перед загрузкой всего (после setContentView в onLoad) и закрывать его после того, как вы сделали все на карте, что вам нужно;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...