2016-06-02 18 views
2

В моем приложении для Android мне нужно сделать некоторую работу каждый раз, когда пользователь подключает их устройство. Для этого прямо сейчас я использую BroadcastReceiver, который запускает мой IntentService для выполнения этой работы, когда пользователь подключает устройство и останавливает его, когда устройство отключается.Android - JobScheduler или BroadcastReceiver?

Прямо сейчас я имею в виду использование JobScheduler для Android 5.0 и выше, но то, что я вижу, что с JobScheduler, я бы планировать свою работу в приложение, позвонив по телефону

JobScheduler.schedule(JobInfo); 

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

По этой причине я считаю, что одним из способов было бы запланировать его при первом открытии приложения, а затем всегда принудительно перепланировать, так как я не могу доверять пользователю, открывающему мое приложение каждый день (что из-за характер моего приложения, конечно, не произойдет).

Итак, должен ли я использовать BroadcastReceiver или использовать JobScheduler для Android 5.0+?

И если вы используете JobScheduler, должен ли я планировать свою работу только один раз, а затем всегда возвращать true, чтобы принудительно перенастроить?

спасибо.

+0

Слушайте состояние замены батареи через BroadcastReceiver: http://stackoverflow.com/questions/11277302/i-cant-receive-broadcast-on-battery-state-change – Goufalite

ответ

0

Jobcheduler работает в фоновом режиме и продолжает перезагрузки, поэтому все должно быть хорошо.

Смежные вопросы