flutter_inappwebview 사용시 현대카드 백신 설치 무한루프 이슈

JungHanMa·2025년 3월 11일

토스페이먼츠 현대카드 결제 과정에서 핀번호 입력 시 백신 설치를 요구하는 팝업이 계속 반복되는 이슈가 발생했습니다. 이미 백신 프로그램(V3 등)이 설치되어 있음에도 백신이 정상적으로 인식되지 않는 문제였습니다.

문제의 원인은 WebView 내에서 넘겨주는 URL의 대소문자 정보가 유실되는 데 있었습니다.

inappWebView에서 사용하는 WebUri 클래스는 URL을 문자열로 변환할 때 기본적으로 .toString()을 사용하는데, 이 과정에서 URL 포맷이 변경되며 대소문자 구분이 사라지는 현상이 발생했습니다.

특히 V3 백신 프로그램은 대소문자를 엄격히 구분하여 URL을 판별하기 때문에, 이로 인해 백신이 정상 동작하지 못했던 것입니다.

✅ 해결 방법
WebUri.toString() 대신 WebUri.rawValue 를 사용하여 원본 URL 정보를 그대로 전달하자, 백신이 정상적으로 동작했습니다.

// 잘못된 방식
uri.toString(); // 대소문자 정보 손실 가능

// 올바른 방식
uri.rawValue;   // 대소문자 포함한 원본 URL 유지

참고 : https://techchat.tosspayments.com/m/1308975211676172389

profile
Frontend Junior

0개의 댓글