Follow my understanding about your question. I think FLAG_ACTIVITY_NEW_TASK flag can help you. The document say:
When using this flag, if a task is already running for the activity you are now starting, then a new activity will not be started; instead, the current task will simply be brought to the front of the screen with the state it was last in
And If there is already an instance of the activity are running. Method :
protected void onNewIntent(Intent intent)
will be called. So, you can reset your home screen from this method whenever there are a new intent come.
Hope it help.