EMM을 통한 배포
EMM이란?
섹션 제목: “EMM이란?”EMM(Enterprise Mobility Manager)은 Android 태블릿 여러 대를 중앙에서 관리하는 IT 플랫폼입니다 — Intune(Microsoft), Jamf Pro, Esper, Scalefusion, Samsung Knox가 대표적인 선택지입니다. Jonot 앱이 Managed Google Play를 통해 EMM에 등록되면, EMM은 각 기기에 관리형 구성(Managed Configurations) — 새 APK 빌드 없이도 앱이 시작 시점과 IT 관리자가 업데이트할 때마다 읽어오는 키/값 설정 — 을 푸시할 수 있습니다.
Managed Google Play에 등록하기
섹션 제목: “Managed Google Play에 등록하기”구성을 푸시하려면 먼저 Jonot 앱이 EMM의 앱 카탈로그에서 이용 가능해야 합니다.
- Google의 Google Play에서 앱 가져오기 가이드를 따라 Jonot Kiosk와 Jonot Desk를 Managed Google Play 계정에 추가하세요.
- EMM에서 키오스크/창구 태블릿에 사용하는 기기 프로필에 두 앱을 모두 추가하세요.
- EMM은 각 앱의 관리형 구성 스키마(APK 내
app_restrictions.xml에 정의됨)를 자동으로 인식합니다. 수동으로 스키마를 가져올 필요는 없습니다.
구성 키
섹션 제목: “구성 키”두 앱은 URL 재정의 키를 제외하고 동일한 키를 공유합니다(키오스크는 kioskUrlOverride, 창구는 deskUrlOverride를 사용). 모든 키는 선택 사항이며 별도 명시가 없는 한 기본값은 비어 있습니다.
pairingCode(문자열) — 최초 실행 시 기기를 자동으로 페어링합니다. 앱이 코드를 SPA에 주입하므로 직원이 기기에서 7자리 페어링 코드를 직접 입력할 필요가 없습니다. 기기별로 설정하세요 — 태블릿마다 다른 값을 지정합니다.managerPin(문자열) — 탈출 경로용 PIN을 중앙에서 설정합니다. 값을 설정하면 기기의 최초 실행 PIN 설정 대화상자가 건너뛰어집니다. 현장 직원이 직접 PIN을 설정하게 하려면 비워두세요. 새 값을 푸시하는 것은 기기를 직접 만지지 않고도 잊어버린 PIN을 복구하는 권장 방법이기도 합니다.allowEscapeHatch(불리언, 기본값true) —false로 설정하면 오른쪽 위 모서리를 다섯 번 탭하는 동작 전체를 비활성화합니다. 탈출 경로가 전혀 필요 없는 트래픽이 많은 공공 키오스크에 유용합니다.kioskUrlOverride/deskUrlOverride(문자열) — 고급 설정, 스테이징/LAN 전용. 내장된 SPA URL(https://kiosk.jonot.io또는https://desk.jonot.io)을 재정의합니다. 프로덕션에서는 비워두세요.apiOriginOverride(문자열) — 고급 설정, 스테이징/LAN 전용. 내장된 API 원본(https://api.jonot.io)을 재정의합니다. 프로덕션에서는 비워두세요.
EMM에서 설정 배포하기
섹션 제목: “EMM에서 설정 배포하기”정확한 UI는 EMM마다 다르지만, 일반적인 절차는 다음과 같습니다.
- EMM 콘솔에서 Jonot Kiosk 또는 Jonot Desk의 관리형 앱 구성을 엽니다.
- EMM이 스키마를 양식으로 렌더링합니다. 설정하고 싶은 키를 입력하고, 나머지는 기본값을 사용하도록 비워두세요.
- 구성을 기기 그룹이나 개별 기기에 할당합니다.
- 구성을 푸시합니다. 기기가 온라인 상태면 즉시 수신하며, 그렇지 않으면 다음 체크인 시점에 수신합니다.
- 앱이 구성을 다시 읽고 적용합니다. URL과 원본(origin) 변경은 WebView를 다시 로드합니다(사실상 앱 재생성입니다) — 진행 중이던 고객 흐름은 초기화됩니다.
배포별 권장 설정
섹션 제목: “배포별 권장 설정”pairingCode: 해당 기기에 대해 Jonot 관리자 대시보드에서 발급한 페어링 코드.managerPin: 회사의 IT PIN 정책(또는 현장에서 설정하도록 비워둠).allowEscapeHatch: 대부분의 배포에서는true로 설정하고, 현장 관리 접근이 전혀 필요 없는 경우에만false로 설정합니다.
URL 재정의
섹션 제목: “URL 재정의”표준 프로덕션 배포에는 URL 재정의 키가 필요하지 않습니다. 다음의 경우에만 설정하세요.
- 스테이징 환경을 대상으로 테스트하는 경우.
- 로컬 LAN에 온프레미스 오프라인 호스트 배포(
apps/host)가 있는 경우.
URL 재정의를 설정한다면, 기기의 ALLOW_CLEARTEXT 빌드 구성이 HTTP를 허용하는지도 확인하세요(LAN URL의 경우). 이를 위해서는 사용자 지정 빌드가 필요합니다 — Play 스토어 빌드는 항상 cleartext를 기본적으로 false로 설정합니다.
동작 세부 사항
섹션 제목: “동작 세부 사항”- 자동 페어링(
pairingCode): 코드는 각 페이지 로드 후window.__JONOT_MANAGED_PAIRING_CODE로 SPA에 주입됩니다. SPA는 부팅 시 이 값을 읽어 자동으로 페어링을 완료합니다. 이미 페어링된 기기에 동일한 코드를 다시 푸시하는 것은 아무 효과가 없습니다. 이전에 자동 페어링된 기기에 다른 코드를 푸시하면 페어링이 다시 실행됩니다. - 관리자 PIN(
managerPin): 기기의 최초 실행 PIN 설정과 동일한 키 아래, 기기의 암호화된 SharedPreferences에 저장됩니다. 다음 탈출 경로 탭 시점부터 적용됩니다. 값이 설정되어 있으면 EMM에서 푸시한 PIN이 우선하며, 매 앱 시작 또는 구성 변경 시 기기의 PIN을 덮어씁니다. - 탈출 경로(
allowEscapeHatch): 재시작 없이 구성 변경 즉시 적용됩니다. - URL/원본 재정의: 구성 변경 시 적용됩니다. 앱이 새 URL로 다시 로드되며 — 진행 중이던 고객 흐름은 초기화됩니다.