2016-11-29 1 views
2

Activity, standard, singletop, singletask 및 singleInstance의 네 가지 실행 모드가 있습니다. 앞의 세 가지는 비교적 쉽게 이해하고 널리 사용됩니다. 그러나 지금까지는 singleInstance를 사용하는 시나리오를 찾지 못했습니다. Android : singleInstance launchmode는 언제 사용해야합니까?

Some of the real use case is an Activity for Launcher or the application that you are 100% sure there is only one Activity

어느 한 전에 그것을 사용 했습니까?

+0

http://stackoverflow.com/questions/3219726/android-singletask-or-singleinstance-launch-mode – sasikumar

+0

다음 내용이 도움이 될 수 있습니다. [Android 액티비티의 launchMode 이해 : 표준, singleTop, singleTask 및 singleInstance] (https :// /inthecheesefactory.com/blog/understand-android-activity-launchmode/en) – Sar

답변

0

SingleInstance 실행 모드는 완전히 하나의 활동으로 구현 된 응용 프로그램에서만 사용해야합니다. 한 번에 하나의 인스턴스 만 존재합니다. 시스템은이 유형을 보유하는 타스크로 다른 활동을 실행하지 않습니다. 그것은 항상 그 일의 한 구성원이며 여기에서 시작된 활동은 별도의 과제로 시작될 것입니다. 당신이 task.Its 작업에 활동의 일부가 될 어떤 다른 활동을 원하지 않는 경우

+0

이 동작을 얻으려면'singleInstance' 실행 모드를 사용할 필요가 없습니다. 표준 실행 모드에서는 이러한 동작을 제공해야합니다. 일반적으로 "홈 스크린"대체품을 만들지 않는 한'singleInstance' 실행 모드를 사용하는 것은 좋지 않습니다. –

-1

singleInstance의 launchmode이 사용됩니다. 이 launchmode는이를 허용하지 않습니다.

+0

나는이 질문에 정말로 대답한다고 생각하지 않는다. 너무 깁니다. 그리고 그것이 옳은지 아닌지를보기 위해 그것을 지루하게하는 지루하고 OP의 질문에 대답하지 않습니다. _ "singleInstance' 실행 모드는 언제 사용해야합니까? _ –

+0

편집 된 답변 다시 한 번 확인해. –

+0

자, 왜 작업에 하나의 활동 만 가져야합니까? 아직도 질문에 대답하지 않습니다 :) – IlyaEremin

0

singleInstance 실행 모드를 사용할 이유가 없습니다.

"홈 스크린"교체 또는 런처 유형 응용 프로그램을 구축하는 경우 Activity이 항상 해당 작업의 루트가되도록 singleInstance 또는 singleTask 실행 모드를 사용하십시오. 이렇게하면 다른 응용 프로그램이 Activity을 시작하면 해당 응용 프로그램의 작업에 Activity이 시작되지 않고 응용 프로그램의 Activity 인스턴스가 하나만 생성되도록 할 수 있습니다.

"홈 스크린"대체 응용 프로그램을 작성하는 경우 다른 활동을 시작할 때 항상 Intent.FLAG_ACTIVITY_NEW_TASK을 지정하여 다른 활동이 자신의 작업에 시작되지 않도록 할 수 있습니다. 이 경우 실행 모드 singleTask을 사용할 수 있습니다. 그래서 발사 모드 singleInstance을 사용할 이유가 없습니다. 당시 안드로이드 개발자들에게는 분명히 알려지지 않았을 것입니다.

관련 문제