Daily iOS
빌드·배포

심사 없는 핫픽스와 동적 코드 금지

출시된 앱에 치명적인 버그가 있는데 App Store 심사를 기다릴 수 없습니다. 과거 중국 앱들이 쓰던 JSPatch 같은 동적 코드 패치를 Apple은 왜 금지했고 어떻게 검출했나요?

면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
짧은 답 보기

JSPatch는 서버에서 받은 JavaScript를 JavaScriptCore로 실행해 Objective-C 런타임(method swizzling·동적 메서드 추가)으로 기존 메서드를 바꿔치기했다. Apple은 심사 가이드라인 2.5.2(다운로드한 코드로 앱 동작 변경 금지)로 금지하고, 정적 분석으로 JSPatch 심볼·JSContext+런타임 API 조합을 검출해 경고 메일을 보냈다.

받은 질문 공유