Reputation: 180
I have the following scheme in my application.
All is working perfectly except one thing. When i close the app from Task Manager on my device, process is killed and my alarm no more works. So the process is stopped until next restart of device.
Setting android:process to different for the service and activity does not help. Debugger shows me that we have two different processes, but closing an app from the task manager kills both processes.
I have created two different applications, one just an activity, and the second one for broadcast receiver and service.
In that case all is working as i need. But now i have another issue. Two .apk files. I have tried to find a solution to merge two apk's in one for Market, but looks like its impossible. Ask user for installing two apk for one does not good idea i think.
So my question is how i can solve this?
Upvotes: 0
Views: 1254
Reputation: 1006644
When i close the app from Task Manager on my device, process is killed and my alarm no more works. So the process is stopped until next restart of device.
This is a good thing. The user, by killing or force-stopping your application, is saying "I do not want you to run again". Developers should respect their users wishes.
So my question is how i can solve this?
Treat your users with respect and allow them to force-stop your app if they choose. You can re-enable your alarms on the next manual run of your application.
You can also detect if they did this, by having your AlarmManager
-triggered code keep track of when it runs -- if, the next time the user manually launches your activity, you determine that the alarm code has not run in far too long, that indicates the user force-stopped you. You might use this information to suggest that the user go to your PreferenceActivity
and change how your alarms behave (e.g., run every 24 hours instead of every 10 minutes), so that the user does not feel the need to force-stop your application.
Upvotes: 1