2013-03-30 2 views
0

У меня есть mainActivity.
Когда он начинается, он начинает службу и связывает ее.
Существует таймер, который отправит mainActivity (это) обратно через X секунд, в то время как служба продолжит работу и прослушивание, я использую moveTaskToBack (true).
Когда слушатель служба запускается, служба начинает свою деятельность, но вместо того, чтобы деятельность, чтобы назвать через onResume() (так как он был отправлен обратно) его называют через onCreate(), чтобы вызвать активность в настоящее время я использую:возобновление активности на Android с использованием сервиса

Intent dialogIntent = new Intent(getBaseContext(), MainActivity.class); 
dialogIntent.addFlags(Intent.FLAG_FROM_BACKGROUND); 
getApplication().startActivity(dialogIntent); 

Это объясняет, почему деятельность создается снова и снова. Я пробовал использовать FLAG_ACTIVITY_REORDER_TO_FRONT, но получил исключение.

ответ

1

добавить этот атрибут в деятельности AndroidManifest.xml android:launchMode="singleInstance" в AndroidManitest.xml

AndroidMenifest.xml

<application> 
     <activity 
      android:launchMode="singleInstance"> 
     </activity> 
    </application> 
+0

к чему? mainActivity часть? разве он не собирается «убивать» и «воссоздавать» деятельность, но не возобновлять ее? – SagiLow

+0

Когда начинается сервис, откуда? –

+0

Попробуйте подтвердить onpause() получает вызываемый. Когда movetasktoback (true); вызывается –

Смежные вопросы