Unity3D로 게임 클라이언트를 제작하고 Nettention사의 ProudNet을 이용하여 게임 네트워크를 담당하여 게임을 제작하는 과정에서 안드로이드 빌드로 포팅해서 모바일에서 실행시켰을 때 클라이언트가 서버에 제대로 접속하지 못하는 문제점을 발견했다. 똑같은 클라이언트에 대해서 PC로 포팅 했을때에는 서버에 제대로 접속이 되는데에 반해서 모바일 버전은 접속이 안되는 바람에 하루 가까이 시간을 쏟아서 해결책을 찾았는데 문제의 해결법은 매우 간단했다.
해결책
- File 메뉴에서 Build Setting을 연다.(혹은 Ctrl + Shift + B 단축키로 열 수 있다.)
- Platform 리스트 중에서 Android를 선택하고 그 아래에 있는 Player Setting ... 버튼을 누른다.
- 그러면 Inspector 창에 Player Setting이 열리는데 아래쪽에 안드로이드 모양 탭중에서 Other Setting이라는 메뉴를 찾는다.
- 그 중에 굵은 글씨로 Configuration 메뉴 중에 Internet Access 라는 항목이 있다.
- 이 항목의 기본 값은 Auto로 되어 있는데 이것을 Require로 변경한다.
위의 그림처럼 Internet Access 항목을 Require로 변경해주면된다.
이상의 과정을 모두 끝내고 난 이후에 다시 안드로이드 버전으로 빌드하여 모바일에 설치하고 실행하면 서버 접속이 원활하게 이루어지는 것을 알 수 있다.
이러한 문제가 ProudNet API를 사용할 때만 나타나는 것인지 아니면 다른 네트워크 API를 사용했을때도 나타나는 문제인지는 모르겠지만 인터넷 상에서 이와 관련된 정보를 찾아보기가 쉽지 않아서 개인적으로 참고도 할 겸, 다른 사람이 찾아봐서 도움도 될 겸해서 포스팅을 남겨둔다.
[유니티 어필리에이트 프로그램]
아래의 링크를 통해 에셋을 구매하시거나 유니티를 구독하시면 수익의 일부가 베르에게 수수료로 지급되어 채널의 운영에 도움이 됩니다.
[투네이션]
[Patreon]
[디스코드 채널]
반응형