Как получать обновления местоположения только в определенный промежуток времени?

В моем приложении для Android я хочу получать обновления местоположения только для определенного интервала времени, например, с 9 утра до 9 вечера.

Как это выполнимо. Пожалуйста, поделитесь своими мыслями по этому поводу.

Заранее спасибо.!


person Sunil P    schedule 26.06.2017    source источник


Ответы (3)


Это мое решение этой проблемы. используйте его в работающей фоновой службе или что-то вроде этого:

Calendar c = Calendar.getInstance();
int hofday = c.get(Calendar.HOUR_OF_DAY);    //getting the current hour of day

    if (hofday<21  && hofday>9){    //between 9am. and 9pm.

        //start collecting gps data


    }
    else{

        //it is not between 9am. and 9pm.
    }
person Emanuel Graf    schedule 26.06.2017
comment
Спасибо. Я проверю и дам вам знать. - person Sunil P; 26.06.2017
comment
Благодарю вас! Вы не против отметить это как правильный ответ? - person Emanuel Graf; 28.06.2017

Ставишь будильник на 9 утра и 9 вечера. Затем в своем широковещательном ресивере для первого включаешь обновления местоположения, а для второго отключаешь.

person Gabe Sechan    schedule 26.06.2017
comment
Вы имеете в виду после установки будильника. Вы хотите, чтобы я включал и выключал службу, чтобы получать обновления местоположения. - person Sunil P; 26.06.2017

Это хорошее руководство о том, как запланировать повторяющиеся будильники. Для обновления местоположения я рекомендую использовать LocationListener.

person RonTLV    schedule 26.06.2017