SDK 검증 범위와 인수 기준
2026-09-22 실행 기록. 자동 테스트, 실제 앱·서버 실행, 대상 장비 인수의 범위를 구분합니다.
검증 환경
Android SDK 0.2.0-rc.2: Android 16/API 36.1 ARM64 에뮬레이터, 업무앱 샘플과 독립 지원 앱. Linux SDK preview: Ubuntu 24.04 ARM64 컨테이너, 일반 사용자, Xvfb X11와 nested GNOME 46 Wayland. Linux 데스크톱 시험은 2 CPU / 2 GiB 제한입니다.
추가 CI: Ubuntu 24.04 AMD64에서 Go race/X11, C ABI와 C·Go 예제 실제 실행 및 SDK ZIP 생성이 통과했습니다. Android CI에서도 두 앱의 Maven debug/R8 빌드와 문서 전용 소비 앱 빌드가 통과했습니다. 이는 물리 GPU나 제조사 장비 인증을 포함하지 않습니다.
Android에서 실행한 항목
| 계층 | 결과와 범위 |
|---|---|
| 단위·수명주기 | 37개 통과. 설정·HTTP 계약·상태·중복 시작·권한 거부·회전·늦은 결과·입력 보호. |
| Android 장치 시험 | 4개 기능 시나리오 통과. 실제 MediaProjection/WebRTC 영상·입력·회전·재연결·보기 전용·사용자/운영자/OS 종료. backend/시그널링은 로컬 fixture. |
| 실제 TURN | 직접 연결·UDP·TCP·TLS 4경로에서 영상 디코딩과 입력 통과. 중계 경로는 relay/relay 후보를 확인. |
| 배포 APK 실행 | 두 앱 debug와 QA 서명한 R8 release 설치·실행. 운영 backend/WSS/웹 뷰어로 영상, 입력, 운영자 종료 확인. 동일 서명 업데이트에서 코드 유지. |
| 문서 소비자 | 별도 프로젝트에서 문서의 전체 Activity를 Maven AAR만으로 debug/R8 release 컴파일. 두 샘플도 published SDK 의존성으로 빌드. |
Linux에서 실행한 항목
| 계층 | 결과와 범위 |
|---|---|
| 공개 Go/C SDK | Start/Status/Identity/Stop/Wait/Done, 중복 소유·상태 보존·비밀값 제외·root 거부·잘못된 JSON/경로/URL 검증. 별도 Go 모듈에서 공개 API로 컴파일. |
| C/Go 예제 | 실제 운영 등록·WSS·웹 터미널 Bash 왕복, Enter 종료와 동일 상태 재시작. C 예제의 SIGURG 종료 결함 수정 후 회귀 시험 통과. |
| 터미널·Fleet·유지보수 | race 검사로 PTY·크기 변경·종료·백프레셔, Fleet 명령 제한/시간초과, 유지보수 배제 동작 검증. 실제 고객 기기에 Fleet 명령을 보내지는 않음. |
| X11 | 실제 VP8 영상·원격 입력과 800×600 JPEG 캡처 통과. |
| Wayland | 실제 GNOME portal 승인, 화면 영상·대문자/기호/한글 입력 통과. 거부 시 제어 차단·터미널 유지 통과. 초기 실행의 붙여넣기+Enter 순서 실패는 아래 제한에 기록. |
| TURN | UDP/TCP/TLS 각각 실제 relay/relay 터미널 왕복 통과. |
| xSpan 별도 회귀 | ARMv5 클린 교차 빌드와 codec/entropy/process/identity/product 5개 실행, Go gateway/relay race 통과. 이번에 실물 reader의 firmware/RFID 시험은 하지 않음. |
관찰한 제한과 성능
Android 1600px·30fps 목표의 12초 측정에서 직접 약 30.1fps, TURN UDP 16.8fps, TCP 8.9fps, TLS 4.6fps였습니다. 이번 에뮬레이터·네트워크의 관찰값이며 SLA나 제품 성능 보장이 아닙니다. 프록시·지연·혼잡 조건에 따라 달라집니다.
제품별로 남아 있는 인수
- Android: 실제 판매 모델·OS, 16 KB 페이지 실기, 제조사 배터리 정책·접근성 제한·화면 잠금·재부팅, 실제 IME/WebView/바코드 장비를 확인합니다.
- Linux: 대상 glibc/배포판과 물리 ARM64/AMD64 장비의 GPU·다중 모니터·키보드 레이아웃, 로그인/로그아웃·재부팅, 장시간 실행을 별도 확인합니다.
- 고객 환경: 계정 권한·테넌트 배정·프록시·매장망·기업 방화벽, 서명된 앱 업데이트와 복구, 지원 중 업무 영향과 로그 정책을 확인합니다.