GREE WebView에서 NiceAPI(본인인증 등 외부 인증앱 호출)가 안될 때, GREE WebView 플러그인 버전업으로 해결
프로그램개발/C# and unity 2025. 8. 26. 08:44
🔎 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가 정상 작동하는 겁니다.




