본문으로 이동
SK-INTELLIX / ARCHITECTURE ATLASMR7 개발 가이드 ↗

전체 Atlas / 모듈 상세 · 1398d109

OTA·제품 빌드·native 서비스 — 상세 구조도

기준 커밋: 1398d109c391c4044cae26d0e9aea4d3f08d9670. 도식은 기존 구현을 설명한다. 제품 이미지 설치·실기기 성공을 증명하지 않는다.

UpdateEngine 소유자와 제품 편입·init·library 경계를 함께 확인

SVG 원본 크게 열기 · Mermaid 원본 · 모듈 분석 본문

OTA·제품 빌드·native 서비스
SVG 원본을 열어 확대하고, 아래 연결 표에서 E 번호를 확인하세요.

읽는 순서와 연결 의미

행은 책임·실행 경로별 묶음이며 별도 프로세스라는 뜻은 아니다. 같은 행의 인접 연결은 화살표로, 행을 넘거나 떨어진 상자 사이 연결은 동일한 E 번호의 출력·입력 포트로 표시한다. 아래 표는 방향과 의미를 모두 풀어 쓴 것이다. 그림의 코드 파일명을 눌러 저장소로 이동하는 기능은 없으며, 아래 경로로 지정 커밋을 조회할 수 있다.

연결 출발 → 도착 동작 종류
E01 UpdateAgent Service → MainActivity 상태·메시지 알림 결과·이벤트
E02 MainActivity → UpdateManager applyUpdate 호출·명령
E03 UpdateManager → 외부 UpdateEngine applyPayload 호출·명령
E04 packages.mk → Android.mk 모듈 제품 모듈 선택 데이터·구성 의존
E05 packages.mk → privapp allowlist XML copy 선언 데이터·구성 의존

구성요소별 책임과 코드 근거

상자 구성요소 책임·상태 지정 커밋의 소스 경로
N01 UpdateAgent Service IUpdateControl OTAUpdate / MainActivity에 broadcast apps/UpdateAgent/java/com/sk/airbot/updateagent/UpdateAgent.java
N02 MainActivity UpdateManager owner / config 선택 / applyUpdate apps/UpdateAgent/java/com/sk/airbot/updateagent/ui/MainActivity.java
N03 UpdateManager PrepareUpdateService → payload / bind / cancel / 상태 재동기화 apps/UpdateAgent/java/com/sk/airbot/updateagent/UpdateManager.java
N04 외부 UpdateEngine Android payload 적용 / slot·재부팅 완료는 별도 apps/UpdateAgent/java/com/sk/airbot/updateagent/UpdateManager.java
N05 ethernetagent init → ethernetStatic.c / eth0 / route / property / ping service/ethernetagent/ethernetStatic.c
N06 logwriter logcat / inotify worker / 회전·gzip / ZIP 도구 service/logwriter/logwriter.cpp
N07 a1_decrypt 외부 binary·rc prebuilt / 기본 packages 선택 없음 service/decrypt/Android.mk
N08 libserial_port 32/64 bit prebuilt .so / system/lib·lib64 선언 libs/serial_port/Android.mk
N09 packages.mk PREBUILT=n / PACKAGES=y / 조건부 PRODUCT_PACKAGES packages.mk
N10 Android.mk 모듈 source BUILD_PACKAGE / IoT·Pairing BUILD_PREBUILT Android.mk
N11 privapp allowlist system 권한 XML 복사 / 최종 grant는 별도 확인 apps/permissions/
N12 sepolicy / script system_app.te 빈 파일 / build_DA / cmd_test 운영 도구 sepolicy/system_app.te

해석 경계와 변경 시 검토

Connections

전체 시각 자료 · 전체 분석 · 모듈 분석 · 전체 소스 근거