는이 활동을 시작합니다살아 내 활동을 유지)들의 OnDestroy (내 서비스는 사용자와 상호 작용해야하는 경우
Intent i = new Intent(context, Ringer_intent.class);
i.putExtra("PHONE_NUMBER", phone_number);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
// TODO: This prevents onDestroy --> why???
i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
context.startActivity(i);
Ringer_intent가 실행되지 않습니다 있는지 확인하기 위해 두 번 나는
추가i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
그리고 나는 또한
@Override
public void onNewIntent (Intent intent) {
}
내가 내 Ringer_intent 교류를 원하는 내 활동에 추가 그것이 끝나면 사라져가는 성질. 나는 사용자가 그것을 fg로 되돌릴 수 없도록하고 싶다.
@Override
public void onStop() { Log.i(LOG_TAG, "Ringer_intent.onStop()"); // For Debugging
super.onStop();
}
@Override
public void onDestroy() { Log.i(LOG_TAG, "Ringer_intent.onDestroy()"); // For Debugging
super.onDestroy();
Log.e(LOG_TAG, "Still not dead - kill it!");
// Bad idea - it kills my service as well !!!
// android.os.Process.killProcess(android.os.Process.myPid());
}
그래서 안드로이드가 호출되는 것을 볼 수 있습니다 그것을 사용하는 방법은/FLAG_ACTIVITY_SINGLE_TOP 오
승 작동하지만 FLAG_ACTIVITY_SINGLE_TOP 내 활동과 BG에 남아 는
...
나는 다음과 같은 추가 모두
내 활동은 여전히 있습니다 ...
어떤 생각이 있으십니까?
감사
참고 : - 당신은 당신이 그것을하고있는 방법 Intent.setFlags()
를 호출 할 수 없습니다
귀하의 질문이 매니페스트 게시하시기 바랍니다 :-(이해하고 무엇을 설명하려고하는 것은 매우 어렵다 당신이하고 싶은 일과 명확하지 않은 일 –
또한'Intent.setFlags()'를 당신이하고있는 것처럼 호출 할 수 없다'setFlags()'를 호출하면 플래그를 인자로 덮어 쓴다. 이것은'setFlags()'에 전달된다. 이것은'setFlags()'를 3 번 호출 한 후에 마지막으로'setFlags()'를 호출했을 때 유일하게 설정된 플래그가된다. 'setFlags()'대신에'addFlags()'를 사용하거나'setFlags()'를 한 번 호출하고 모든 플래그를 인자로 넘길 수 있습니다 :'setFlags (Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIV ITY_EXCLUDE_FROM_RECENTS | Intent.FLAG_ACTIVITY_SINGLE_TOP) ' –
감사합니다 !! 무슨 실수 :-) David이 설명했듯이 - Intent.setFlags()에 대한 마지막 호출은 FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS을 (를) 취소 했으므로 bg에서 사용자가 내 활동 UI를 계속 사용할 수 있습니다. FLAG_ACTIVITY_SINGLE_TOP (으)로 할 일이 없습니다 .--) 다시 한 번 감사드립니다. – Ori