앱 MVP Android Activity Embedding: 분할 규칙·뒤로가기·상태를 나누는 5가지 기준
앱 MVP Android Activity Embedding: 분할 규칙·뒤로가기·상태를 나누는 5가지 기준
직접 답변: 기존의 다중 Activity Android MVP에서 Activity Embedding을 검토한다면, “어떤 Activity 쌍을 분할할지”, “작은 화면에서는 어떤 단일 화면 흐름으로 돌아갈지”, “분할 상태에서 뒤로가기가 어느 화면에 적용될지”, “접힘·펼침이나 창 크기 변경 뒤 어떤 입력 상태를 복원할지”, “깊은 링크가 어느 시작 화면을 거칠지”를 각각 따로 결정해야 합니다.
태블릿에서 두 패널이 한 번 보였다는 사실만으로 대화면 대응이나 출시 준비가 끝났다고 보지 마세요.
Android Developers는 Activity Embedding을 다중 Activity 기반 앱이 대화면에서 두 Activity를 한 작업 창 안에 배치하도록 돕는 방식으로 설명합니다.
작은 화면에서는 Activity가 쌓여 표시되고, 큰 화면에서는 설정한 규칙에 따라 나란히 표시될 수 있습니다.
이 글은 구조를 바꾸기 어려운 MVP를 위한 판단 가이드이며, 모든 기기·Android 버전·OEM 환경에서의 동작, 성능, 출시 승인이나 사용자 결과를 보장하지 않습니다.
먼저 “대화면 레이아웃”과 “Activity 구조”를 분리합니다
Activity Embedding은 하나의 화면을 단순히 넓히는 CSS식 처리나, 새 기능을 자동으로 두 칸으로 나누는 설정이 아닙니다.
Android 공식 안내는 이 방식을 쉽게 현대화하기 어려운 다중 Activity 기반 앱을 위한 것으로 설명하며, 새 앱에는 Jetpack API를 포함한 단일 Activity 아키텍처를 권합니다.
따라서 지금의 앱이 목록·상세처럼 서로 다른 Activity를 실제로 갖는지, 새 화면을 추가할 것인지, 아니면 기존 화면의 적응형 레이아웃을 다듬을 것인지를 먼저 기록해야 합니다.
결정의 단위는 “태블릿 지원”처럼 넓은 표어가 아니라 Activity 쌍입니다.
예를 들어 목록 Activity에서 상세 Activity를 여는 흐름, 설정 Activity에서 하위 설정을 여는 흐름처럼 실제 이동 한 가지를 골라 보세요.
그 쌍이 같은 작업 창에서 함께 보여도 되는지, 상세가 없을 때 보조 패널에 무엇을 보여 줄지, 민감한 입력이나 결제 같은 화면은 분할에서 제외할지를 분리하면 구현 범위를 과장하지 않을 수 있습니다.
기준 1: 분할 규칙은 화면 이름이 아니라 시작 관계로 정합니다
Android Developers에 따르면 Activity Embedding은 기본 Activity와 보조 Activity를 컨테이너에 담고, 새 Activity가 시작되면서 분할을 만들 수 있습니다.
규칙은 XML 구성 또는 Jetpack WindowManager API로 정할 수 있습니다.
여기서 중요한 것은 “상세 화면이 있다”는 사실보다, 어느 Activity가 어느 Activity를 시작할 때 분할할지와 각 컨테이너의 종료 관계를 명시하는 일입니다.
목록에서 선택한 항목의 상세를 여는 흐름과, 알림·공유 링크로 상세에 바로 진입하는 흐름은 출발점이 다릅니다.
Android 문서는 깊은 링크의 상세 목적지를 큰 화면에서는 목록 옆에, 작은 화면에서는 전체 작업 창에 보이도록 시작 Activity를 통해 라우팅하는 예를 듭니다.
따라서 외부 링크가 어느 Activity로 들어오며, 그 뒤 목록과 상세를 어떤 순서로 만들지, 작은 화면에는 어떤 단일 화면을 보여 줄지를 출시 후보에서 따로 확인하세요.
기준 2: 작은 화면 폴백은 “축소판”이 아니라 탐색 흐름입니다
공식 문서는 작은 화면에서 Activity가 서로 위로 쌓이고, 큰 화면에서는 나란히 표시될 수 있다고 설명합니다.
즉 동일한 규칙이라도 사용자는 화면 크기에 따라 다른 모양을 봅니다.
작은 화면에서 상세가 전체 창을 차지할 때 목록으로 돌아갈 수 있는지, 목록에서 새 상세를 열었을 때 이전 상세가 어떻게 되는지, 보조 패널이 비어 있을 때 무엇을 보여 줄지를 정해야 합니다.
결정 대상 | 따로 확인할 기록 | 완료로 보지 않을 것 |
|---|---|---|
분할 대상 | 기본·보조 Activity의 시작 관계와 제외 화면 | 태블릿에서 화면 두 개가 보인 상태 |
작은 화면 | 스택 순서와 상세에서의 복귀 흐름 | 대화면 스크린샷 하나 |
뒤로가기 | 연결된 화면인지 독립 화면인지에 따른 종료 규칙 | 버튼 탐색 한 번의 결과 |
상태 | 입력·선택·재생 등 복원할 최소 맥락 | 회전하지 않은 정상 경로 |
깊은 링크 | 외부 진입의 시작 Activity와 단일/분할 표시 | 앱 안에서만 이동한 테스트 |
이 표는 제품의 실제 UI를 대체하지 않습니다.
앱이 제공하는 기능, 화면 전환, 접근성, 기기 구성에 맞춰 테스트 항목을 더하거나 줄여야 합니다.
특히 대화면에서 정보가 많아졌다는 이유만으로 버튼·카드·텍스트가 무제한으로 넓어져도 된다는 뜻은 아닙니다.
Android의 대화면 UI 안내는 적절한 너비와 큰 터치 대상, 다중 패널 레이아웃을 함께 고려하라고 설명합니다.
앱 MVP의 대화면 전환 범위와 출시 점검 기준을 정리하기
기준 3: 뒤로가기는 보이는 패널 수가 아니라 의존 관계로 정합니다
분할된 창에서 두 Activity가 관련되어 한쪽만 남으면 의미가 없을 수 있고, 반대로 두 화면이 독립적일 수도 있습니다.
Android Developers는 이 차이에 따라 두 Activity를 함께 끝내거나, 한 Activity의 뒤로가기가 다른 Activity 상태에 영향을 주지 않도록 설정할 수 있다고 설명합니다.
따라서 “뒤로가면 닫는다”가 아니라 어떤 쌍을 함께 끝낼지와 독립적으로 남길 쌍을 문서화해야 합니다.
입력 위치도 결과에 영향을 줄 수 있습니다.
공식 문서는 버튼 탐색에서는 마지막으로 초점을 가진 Activity가 뒤로가기를 받고, 제스처 탐색은 Android 버전과 동일 앱·서로 다른 앱 오버레이 여부에 따라 동작을 구분해 설명합니다.
특정 버전의 예상만으로 전 기기 결과를 선언하지 말고, 출시하려는 최소 지원 범위와 실제 탐색 방식에서 목록·상세·깊은 링크·다이얼로그를 각각 점검하세요.
기준 4: 창 크기 변화와 Activity 재생성 뒤의 상태를 검수합니다
폴더블의 접힘·펼침, 자유 크기 창의 조절, 회전, 화면 크기 변화는 대화면 앱에서 일어날 수 있는 구성 변경입니다.
Android 안내는 구성 변경 때 실행 중 Activity가 파괴되고 다시 만들어질 수 있다고 설명합니다.
앱이 일부 변경을 직접 처리하더라도, 사용자가 입력 중이던 값·선택 중인 항목·재생 맥락처럼 제품에서 필요한 상태는 끊기지 않게 유지해야 합니다.
그래서 분할 규칙이 적용됐는지만 확인하는 테스트는 충분하지 않습니다.
목록에서 상세를 열고, 입력을 시작하고, 화면을 접거나 창 폭을 바꾸고, 다시 펼친 뒤 어떤 패널이 남는지와 입력·선택이 어떻게 보이는지를 관찰하세요.
관찰 결과는 특정 기기에서의 테스트 기록이지 모든 폴더블·태블릿·ChromeOS 환경의 품질 증명은 아닙니다.
기준 5: 매니페스트·초기화·출시 후보를 각각 확인합니다
Android Developers는 분할 규칙을 쓰려면 Jetpack WindowManager 라이브러리에 접근하고 앱이 Activity Embedding을 구현했다는 사실을 시스템에 알려야 한다고 안내합니다.
또한 매니페스트 속성과 초기화 위치는 깊은 링크, 앱 파괴·재생성과 같은 경로에서 규칙이 빠지지 않도록 검토해야 할 대상입니다.
라이브러리를 추가했거나 XML 파일을 만들었다는 사실만으로 모든 진입 경로가 준비됐다고 보지 마세요.
이 글의 범위는 다중 Activity 앱의 분할 규칙과 검수 기록입니다.
창 크기와 초점, 상태 보존을 폭넓게 다루는 앱 MVP 분할 화면: 창 크기·초점·상태 보존을 나누는 5가지 기준도 함께 읽으면 Activity Embedding과 일반 멀티윈도우 관찰을 혼동하지 않는 데 도움이 됩니다.
출시 전 5분 체크리스트
분할할 Activity 쌍과 분할에서 제외할 화면을 기록했는가?
작은 화면의 스택·복귀 흐름을 대화면과 별도로 확인했는가?
관련 화면과 독립 화면의 뒤로가기 종료 규칙을 나눴는가?
접힘·펼침 또는 창 크기 변경 뒤에도 필요한 입력·선택 상태가 남는지 관찰했는가?
앱 내부 이동뿐 아니라 깊은 링크·재생성 경로에서 초기화와 표시 흐름을 확인했는가?
이 체크리스트는 구현 완료, 접근성 적합성, 기기 호환성, 성능, 스토어 심사 또는 사용자 만족을 보장하지 않습니다.
출시 직전에는 현재 Android 공식 문서, 지원 기기 범위, 실제 앱의 Activity·상태 관리 구조를 다시 확인하세요.
자주 묻는 질문
Activity Embedding은 새 Android MVP에도 기본 선택인가요?
아닙니다.
Android Developers는 Activity Embedding을 쉽게 현대화하기 어려운 다중 Activity 기반 앱을 위한 방식으로 설명하고, 새 앱은 Jetpack 기반 단일 Activity 아키텍처를 사용하라고 안내합니다.
현재 앱의 구조와 변경 비용을 먼저 확인하세요.
대화면에서 두 화면이 보이면 작은 휴대폰에서도 같은 화면이 보이나요?
아닙니다.
Android Developers 안내에서 작은 화면은 Activity가 위아래 스택으로 표시되고, 큰 화면에서는 설정한 규칙에 따라 나란히 표시될 수 있습니다.
두 경우의 탐색과 복귀를 각각 검수해야 합니다.
분할 화면에서 뒤로가기는 항상 두 화면을 함께 닫나요?
아닙니다.
관련 화면을 함께 끝낼지, 독립적으로 남길지는 앱이 정하는 뒤로가기 규칙에 달려 있습니다.
Android 버전과 제스처·버튼 탐색 방식에 따른 실제 동작도 출시 후보에서 확인하세요.
화면을 접거나 창 크기를 바꾸면 상태를 따로 확인해야 하나요?
예.
Android는 구성 변경 때 Activity를 재생성할 수 있으며, 어떤 방식으로 처리하더라도 사용자가 입력·재생 등 맥락을 잃지 않게 상태를 유지해야 한다고 안내합니다.
이 글은 특정 기기 호환이나 품질 결과를 보장하지 않습니다.
내 앱 MVP의 대화면 흐름과 출시 준비를 함께 점검하기