예정된 시간에 내 앱을 열어야합니다. 나는이 일을하는 가장 좋은 방법을 찾았고 혼란 스러웠습니다. 나는 onBoot
에 응답하기 위해 현재 BroadcastReceiver
을 사용하고 있습니다. 그게 잘 작동하지만 어떤 방법으로 다음가는 것이 가장 좋습니다? Service
을 설정하면 AsyncTask
또는 을 설정해야합니까? 그런 다음 AlarmManager
또는 TimerTask
을 사용해야 Main activity
이 시작될 수 있습니까? BroadcastReceiver
에 AlarmManager/TimerTask
을 사용해야합니까? 어떤 코스가 모범 사례이며 그 이유는 무엇입니까?부팅 후 미리 정해진 시간에 활동을 열 수있는 방법
2
A
답변
0
정확한 정밀도가 필요하지 않은 경우 AlarmManager를 사용하면 사용자에게 미치는 영향이 최소화됩니다. 그렇지 않으면 개인적으로 서비스를 사용할 것입니다. 고려해야 할 한 가지 경우는 사용자가 앱을 열고 시간 전에 다른 활동으로 이동할 수 있다는 것입니다. 또한 사용자는 시간 전에 앱을 열고 다시 떠날 수 있습니다.
어쨌든 정밀도는 매우 중요합니다. BroadcastReceiver가 서비스를 트리거하도록하면 TimerTask를 실행하도록 서비스를 받아야합니까? 그런 다음 작업이 실행되면 앱이 이미 실행중인 경우 잠자기 상태인지 확인해야합니다. – Amos