Docker 메모리 설정

설정 프로그램 설치

WSL 을 활성화 하면, 같이 “WSL Settings” 라는 설정 프로그램이 같이 설치된다. 다만, 환경이나, 설치 방법에 따라 해당 프로그램이 설치되지 않는 경우도 있으니, 이럴 경우에는, 아래 경로를 통해 설치 파일을 다운로드 받아 설치를 진행한다.

Releases · microsoft/WSL (github.com)

 

메모리 설정

설정 프로그램 (WSL Settings) 를 실행하여, 메모리 및 프로세스 탭을 통해 해당 설정을 수행할 수 있다. 메모리 크기에서 사이즈를 설정하며, MB 단위로 수정할 수 있다.

이 때 주의할 점은, 수정된 메모리 사이즈는 현재 메모리 가용 범위 내에서 설정을 해 주어야 한다. 그렇지 않을 경우, 설정이 저장되지 않고, 관련 오류가 표시되니, 재부팅 등을 활용하여 가용 메모리를 확보 한 후 수행하여야 한다.

또 한가지 주의할 점은, 해당 메모리 사이즈는, 운영체제와 공유되어 활용되지 못하고, 전용 공간으로 확보되어 버리므로, 설정 이후에 시스템 메모리 사이즈를 고려하여 설정하여야 한다.

 

SWAP 크기 설정

해당 크기가 설정될 경우, 허용 범위를 초과한 컨테이너가, 자동으로 종료되지 않고, Swap 메모리를 활용하여 실행되게 된다. 이에 따라 유휴 컨테이너가 스왑 메모리로 Swap in /Out 되면서 무리한 부하가 발생할 수 있으므로, 0으로 설정한다.

 

설정 후, 재부팅 및 확보된 공간 확인

재부팅 한후, Docker 를 통해 확보된 공간을 확인한다.

Google Login 연동

사전 설정 확인

Java 설치 및 JAVA_HOME 설정 확인

  1. Java 설치 확인, 그렇지 않으면 설치

    https://www.oracle.com/java/technologies/downloads/#jdk21-mac

  2. JAVA_HOME 설정 확인

Unity – Android SDK 설치 확인

Unity 의 Android SDK 가 설치되어 있는지 확인

Android 활성화 확인

  1. File > Build Settings 로 접근
  2. Platform 에서 Android 가 활성화 되어 있는지 확인
  3. 활성화 되어 있지 않으면, Android를 선택하고, 하단 Switch Platform을 클릭 할 것

Player Setting 설정

Player Setting 설정

  1. File > Project Settings > Player 로 접근
  2. Android 탭 선택
  3. Identification 메뉴에서 Package Name 확인 및 입력 (Google Console 에 입력한 Package Name)
  4. Configuration 메뉴에서 Scripting Backend 를 “IL2CPP” 로 선택
  5. Api Compatibility Level : .NET 4.X or .NET Framework 로 선택
  6. ARM64 체크 박스 선택

KeyStore 설정

  1. Player Setting 하단의 “Publishing Settings” 로 이동
  2. Project Keystore 를 기존에 사용하던 (Android Build 에 사용하던) keystore 로 대체

Allow downloads over HTTP 설정

  1. Player Setting 하단의 “Configuration” 로 이동
  2. Allow downloads over HTTP 부분이 Not allowed 로 되어 있는 부분을 Always allowed 로 변경

Google Play Games – Plugin 설치

Plugin 다운로드

https://github.com/playgameservices/play-games-plugin-for-unity/releases/tag/v10.14

설치

  1. 압축 해제 후, 하위 폴더 current-build를 하위의 GooglePlayGamesPlugin-x.yy.zz.unitypackage를 더블클릭 하여 프로젝트에 설치를 진행함
  2. 라이브러리 Import 화면에서 전체 선택 후, Import
  3. “Enable Android Auto-resolution” 팝업 창에서 “Enable” 선택하여 활성화
  4. 만약 해당 창이 뜨지 않을 경우
    1. 빌드 설정이 Android 로 선택되지 않았거나, (설정 변경 수행)
    2. 메뉴를 통해 활성화 시켜줄 수 있음 (Assets > External Dependency Manager > Android Resolver > Force Resolve)

로그인 설정 구성

  1. Windows > Google Play Games > Setup > Android setup으로 접근
  2. Google Play Games 의 Resources Definition 과 Client ID를 입력

Resource Definition

  1. Google Play Console 에서, “게임” 타입의 앱을 생성
  2. Google Console 의 Android 인증 정보를 맵핑 한 후,
  3. 사용자 늘리기 > Play 게임즈 서비스 > 설정 및 관리 > 설정으로 이동하여
  4. 사용자 인증 정보 우측의 리소스 보기 버튼을 통해 해당 정보를 확인할 수 있다.

Client ID

  1. Resource Definition 에서 접근한 설정 창에서,
  2. 사용자 인증 정보 > Android 에서 등록된 앱을 클릭하여 접근하면,
  3. 중간에 *apps.googleusercontent.com 형태로 이루어진 클라이언트 아이디를 확인할 수 있다.

 

프로젝트 정보 적용

위 정보를 입력하고, Setup 버튼을 누르면, 해당 정보가 정상적이라면, 인증이 정상적으로 수행되었다는 알림 창을 확인할 수 있다.

혹시나 에러가 난다면, Client ID 앞뒤로 빈칸이 없는지 확인

 

기타

만약, 해당 인증 정보의 앱 상태가, 테스트 상태 라면, 필히, 테스터에 로그인 테스트를 수행하는 계정의 아이디 정보를 등록해 줘야 한다.

로그인 정보는 Google Play Console 에서,

사용자 늘리기 > Play 게임즈 서비스 > 설정 및 관리 > 테스터 메뉴에서, 테스터를 추가할 수 있다.

 

로그인 화면 구성

Login Canvas 추가

  1. 관련 기능 화면 배치를 위한 Login Canvas 를 추가함
  2. Login Button 추가
  3. Log Message 를 출력할 Edit 추가

Login Manager Script 구현

Start 부분

// 디버그 로그 활성화 여부

PlayGamesPlatform.DebugLogEnabled = true;

// 모듈 활성화

PlayGamesPlatform.Activate();

// 로그인 수행

PlayGamesPlatform.Instance.Authenticate((SignInStatus status) => {

    if (status == SignInStatus.Success) {

string name = PlayGamesPlatform.Instance.GetUserDisplayName();

string id = PlayGamesPlatform.Instance.GetUserId();

string imageUrl = PlayGamesPlatform.Instance.GetuserImageUrl();

}

    else { … 로그인 실패 … }

});