안드로이드 다른 앱에서 파일 공유 또는 열기로 실행될 때 기존에 실행중인 엑티비티(앱) 으로 오픈되도록 하는 방법
다른 앱에서 파일 공유 또는 열기로 특정 파일을 우리 앱으로 열기를 시도하면
항상 새 엑티비티로 열리는 현상이 있다.
이 경우 androidmanifest.xml 안의 activity 에 특정 항목을 추가하는 것으로 개선할 수 있다.
android:launchMode="singleTask"
해당 옵션을 추가하면 파일 공유 또는 다른앱으로 열기를 통해서 우리 앱을 오픈 하는 경우
기존에 우리 앱이 이미 실행 중이라면 그 실행 중 상태에서 오픈된다.
즉 새 앱 또는 엑티비티가 생성되지 않는다.
다만 이 경우는 기존 처럼 onResume() 로 intent 가 들어오지 않는다.
그래서 onNewIntent 를 override 해서 intent 를 받을 수 있다.
다른 앱에서 열기의 경우는 onResume() 과 onNewIntent() 에서 모두 들어오는데
이왕 onNewIntent() 에서 한번에 처리하는게 좋을 듯 하다.
참고 사이트 : 안드로이드 작업 및 백 스택 이해
https://developer.android.com/guide/components/activities/tasks-and-back-stack?hl=ko
참고 사이트 : Android Activity 옵션 (androidmanifest.xml)
https://developer.android.com/guide/topics/manifest/activity-element?hl=ko#clear
참고 사이트 : Android 최근 화면
https://developer.android.com/guide/components/activities/recents?hl=ko