Итак, у вас есть действие, которое остановлено, и вы хотите всплыть, когда поступит звонок.Подход, который я хотел бы предложить:
- первоначально запустить это действие с флагом FLAG_ACTIVITY_SINGLE_TOP
- переопределить функцию onNewIntent () в этом действии и обработать входящее намерение в зависимости от кода действия из намерения (вы определяете их дляразличать причины появления)
- когда вы хотите снова переместить это действие на передний план, вызовите startActivity () с некоторым кодом действия (вы можете сделать это и из Service).Если активность не запущена, она будет.Если он запущен, он не будет перезапущен, но возобновлен, и вы получите свое намерение в onNewIntent (), и ваша активность будет перемещена на передний план.
ОБНОВЛЕНИЕ:
Пример обработки onNewIntent ():
\ android-sdk-windows \ samples \ android-8 \ ApiDemos \ src \ com \ example \ android \ apis \ app \ SearchQueryResults.Ява