🔎 1. Android/iOS WebView 내부 동작 변화

  • NiceAPI는 URL Scheme / Intent 호출을 통해 외부 인증 앱(예: PASS, 공인인증 앱)을 실행합니다.
  • 구버전 GREE WebView는 안드로이드의 shouldOverrideUrlLoading() 혹은 iOS의 decidePolicyForNavigationAction 같은 이벤트를 정상적으로 Hook하지 못하거나 일부 스킴 처리 미지원 → 외부 앱 호출이 막힘.
  • 최신 GREE WebView는 해당 부분이 OS 정책에 맞게 갱신되어 스킴 전달이 정상 작동.

🔎 2. Android/iOS OS 보안 정책 변경

  • Android 11 이후부터는 Package Visibility 제한 때문에 intent:// 스킴으로 외부 앱 호출 시 앱이 검색되지 않으면 바로 실패 → WebView 플러그인에서 대응 필요.
  • iOS도 Universal Links / URL Scheme 호출 처리 로직이 최신 SDK에서만 제대로 지원됨.
    👉 구버전 GREE WebView는 이 정책 변화에 맞춰져 있지 않아 NiceAPI 호출 실패.

🔎 3. HTTPS 리다이렉트 및 WebView 클라이언트 처리 개선

  • NiceAPI는 보안상 HTTPS 리다이렉트 후 인증앱 호출 → 인증 후 다시 리턴 URL로 복귀하는 구조.
  • 구버전 GREE WebView는 onReceivedSslError / shouldInterceptRequest 처리가 미흡 → 리턴을 못 받거나 에러 발생.
  • 최신 버전에서는 SSL/TLS, 리다이렉트 체인 모두 정상 대응.

🔎 4. GREE WebView의 SDK 연동 개선

  • hookedCallback, SetURLPattern 같은 기능이 구버전에서는 일부 동작 불안정 → 특정 스킴(niceauth://, intent://)이 막히는 문제.
  • 최신 버전에서는 스킴 매칭 로직 보완 → NiceAPI에서 사용하는 커스텀 스킴 정상 처리.

✅ 정리하면,
OS 정책 변화 + WebView 스킴/리다이렉트 처리 개선 → 최신 GREE WebView에서 NiceAPI가 정상 작동하는 겁니다.

Posted by 아기곰푸우
,