Reputation: 13747
I have a method that I need to run every few hours even if the user didn't reopen the app. What is the best way to go? Should I use the Timer class or Alarm manager? Thanks!
Upvotes: 5
Views: 16727
Reputation: 2066
Step 1: Define 'Service' class to define logic to be executed
Ste 2: Define BroadcastReceiver and add in manifest xml. This is responsible for calling 'Service' class to do the task.
May be you need add intent action <action android:name="android.intent.action.BOOT_COMPLETED"/>
under in manifest xml
Step 3: Use 'AlarmManager' to schedule to repeat
couple links might help http://www.vogella.com/articles/AndroidServices/article.html#scheduleservice_scheduling
http://khurramitdeveloper.blogspot.in/2013/06/android-alarm-manager-to-start-service.html
Upvotes: 16
Reputation: 20563
You should use AlarmManager to schedule services for this. See this Vogella tutorial.
Upvotes: 8