Получение местонахождения в службе

186
14 апреля 2017, 20:36

Я получал местонахождение в Activity путем имлементирования LocationListener, переопределив метод onLocationChanged(),

@Override
public void onLocationChanged(Location location) {
    if (mCurrLocationMarker != null) {
        mCurrLocationMarker.remove();
    }
    mCurrentLocation = location;
    mLastUpdateTime = DateFormat.getTimeInstance().format(new Date());
    addMarker();
}

Но этот вариант срабатывает если приложение запущен и этот Activity на фокусе. Погуглив я нашел много вариантов. Некоторые требуют каких то не понятных классов, другие то gms.Location, то android.Location и с ошибками. В результате так и не понял какой из них актуальный и правильный, так как написаны 3-4 года назад.

Так вот, хотелось бы понять как получать местонахождение каждые 15 сек, именно в сервисе, и при запуске приложения брал данные от сервиса?

Answer 1

Реализуете свой класс наследник от IntentService, где в методе onHandleIntent() реализуете логику определения локации. Результат выставляете в виде Broadcast'а, который надо ловить в приложении, через BroadcastReceiver

Обращение к сервису очень простое:

Intent i = new Intent(this, MyIntentService.class);
i.putExtra("foo", "bar");
startService(i);
READ ALSO
Как увеличить иконку приложения

Как увеличить иконку приложения

При сборке приложения через Android Studio, иконка меньше многих других иконок приложении, как можно увеличить или что нужно настроить? Буду рад...

205
В библиотеке “cliche” Build error: ошибка package org.junit does not exist import org.junit.Test;

В библиотеке “cliche” Build error: ошибка package org.junit does not exist import org.junit.Test;

Проект запускаетсяНо при Build - выдаёт ошибку:

245
Замена в String.format '.' на ','

Замена в String.format '.' на ','

Пишу (русским языком) в формате разделитель ""(точка), в выводе "," (запятая)

199
отображение файла в TextView

отображение файла в TextView

как вывести слова из файла в TextView рандомно ,чтобы обрабатывал нажатияТ

184