JavaScript Bridge
SDK의 오퍼월은 WebView로 작동하며, WebView와 네이티브 앱 간 통신을 위해 JavaScript Bridge를 사용합니다.
개요
일반적으로는 JavaScript Bridge를 직접 다룰 필요가 없습니다. SDK가 자동으로 처리합니다. 하지만 고급 사용자나 커스터마이징이 필요한 경우 알아두면 유용합니다.
지원하는 메시지 타입
WebView에서 네이티브로 보낼 수 있는 메시지 타입:
openWebView: 서브 WebView 열기close: WebView 닫기trackEvent: 이벤트 추적customEvent: 커스텀 이벤트 (v1.0.24+)dataRequest: 데이터 요청 (v1.0.24+)missionCompleted: 미션 완료 알림missionProgressed: 미션 진행 알림quizCompleted: 퀴즈 완료 알림
커스텀 메시지 처리
WebView에서 특정 메시지를 보냈을 때 앱에서 처리하려면:
Android:
iOS:
보안 고려사항
JavaScript Bridge는 WebView와 앱 간 통신을 가능하게 하지만, 보안에 주의해야 합니다:
민감한 데이터(토큰, 비밀번호 등)를 전달하지 마세요
사용자 입력을 검증하세요
HTTPS만 사용하세요
SDK는 기본적으로 안전하게 설정되어 있습니다.
디버깅
JavaScript Bridge 메시지를 로그로 보려면:
Android:
iOS:
그러면 Logcat/Console에 모든 Bridge 메시지가 출력됩니다.
React Native에서의 사용
React Native 앱에서는 JavaScript Bridge를 직접 구현할 필요가 없습니다.
자동 처리
React Native SDK가 WebView ↔ Native 통신을 자동으로 처리합니다:
내부적으로 React Native 브릿지를 통해 Android/iOS의 네이티브 JavaScript Bridge가 작동합니다.
커스텀 이벤트 처리
WebView에서 보내는 커스텀 이벤트를 처리하려면:
네이티브 커스터마이징
더 복잡한 커스터마이징이 필요하면 네이티브 레벨에서 구현하세요:
Android: 위의 Android 예시 참고 (
JavaScriptBridgeListener)iOS: 위의 iOS 예시 참고 (
JavaScriptBridgeDelegate)
React Native에서 네이티브 모듈을 통해 접근할 수 있습니다.
다음 단계
Last updated