macOS 앱 Google 로그인이 Chrome에서 먹통 — ASWebAuthenticationSession 버그와 external browser 우회
iOS/macOS 코드를 같은 Swift 패키지로 공유하는 앱을 만들고 있다. 로그인은 Apple/Google SSO를 쓴다. iOS에서는 Google 로그인이 잘 됐다. 그런데 macOS 빌드에서만 Google 로그인이 끝까지 완료가 안 됐다. 버튼을 눌러도 아무 반응이 없거나, 인증창이 떠도 “계속"을 누르면 OAuth 동의 페이지가 안 뜨고 브라우저 창만 덜렁 열렸다. 같은 코드인데 왜 한쪽 플랫폼에서만 깨지는가. 이게 며칠간 이어진 삽질의 시작이었다. 결론부터 말하면 범인은 ASWebAuthenticationSession이었고, macOS에서는 이 API를 쓰지 않고 외부 브라우저를 직접 여는 방식으로 바꿔서 해결했다. 이 글은 그 과정과, macOS 데스크톱 OAuth를 어떻게 구현해야 하는지에 대한 정리다. ...