본문 바로가기

유니티

[ 유니티 ] 앱 이름 로컬라이징 하기

[ Android 앱 이름 로컬라이징 ]

[ 언어 설정하기 ]

 사용자의 나라에 따라 앱 이름이 다르게 노출되게 하려 한다 .

먼저 Assets - Plugins - Android - res 폴더를 생성해준다 . 

만약 이미 res 폴더가 있다면 해당 폴더 그대로 사용한다 .

values 는 기본이 되는 언어로 영어버전이라 생각하자 .

이후 원하는 언어가 있다면 values-국가코드의 형태로 폴더를 추가한다 .

국가 코드 보기

 

메모장을 열어 strings 파일을 만들어준다 . 다른이름으로 저장하여 위와 같이 저장한다 .

이때 , 해당 파일은 UTF-8 형식이어야 한다 .

<?xml version="1.0" encoding="utf-8"?>
<resources>
	<string name="app_name">앱 이름</string>
</resources>

이제 각 언어에 맞게 앱이름 부분을 작성한다 .


 

[ 유니티 2021.2 버전 이후의 처리 ]

원래는 위의 과정만 거친다면 앱이름이 국가에 맞게 바뀌었을 것이다 .

그러나 유니티 2021.2 버전 이후로 안드로이드 빌드시  Assets/Plugins/Android/res 디렉토리를 이용하여

리소스를 관리하는 방식이 제거 되었다. 

유니티 공식 문서  

 

빌드시 다음 에러가 나올 것이다 .

Exception: OBSOLETE - Providing Android resources in Assets/Plugins/Android/assets was removed

이는 다음 두가지 방식으로 해결이 가능하다 .


[ 1 . 유니티 다운 그레이드 ]

[ 언어 설정하기 ]

 사용자의 나라에 따라 앱

 

유니티를 2020 버전으로 내린다. 만약 2021 버전의 기능이 필요하다면 아래로 .


[ 2 . Localization 패키지 이용 ]

[ Set Up ]

 

http://www.toughman.pe.kr/2023/04/%EC%9C%A0%EB%8B%88%ED%8B%B0unity-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EB%B9%8C%EB%93%9C-%EC%9D%B4%EB%A6%84-%EB%8B%A4%EA%B5%AD%EC%96%B4-%EC%A7%80%EC%9B%90/

 

유니티(Unity) 안드로이드 빌드 이름 다국어 지원 - Toughman's Blog

게임 개발이 완료되고 대상 기기에 설치되었을 때 사용자가 설정한 언어로 앱 이름이 나타나면 더 좋은 인상을 줄 수 있습니다. 안드로이드로 빌드 했을 때 원하는 언어로 앱 이름을 설정하는

www.toughman.pe.kr

패키지를 사용한다 . 다만 앱이름만을 위해 해당 패키지를 다운받는것은 추천하지 않는다 .

빌드 용량이 10mb 늘기 때문이다 .


[ 3 . 안드로이드 라이브러리 파일 arr 만들기 ]

[ Set Up ]

https://developer.android.com/studio/install?hl=ko

 

Android 스튜디오 설치  |  Android Developers

Windows, macOS 또는 Linux에서 Android 스튜디오를 설정 및 설치합니다.

developer.android.com

안드로이드 스튜디오를 다운받자 .


[ res 디렉토리 내부의 파일을 arr로 만들기 ]

File - New - New Project로 새 프로젝트를 만들어주자 .

라이브러리 파일이기 때문에 Activity가 필요하지 않다.

No Activity로 생성해줍니다. No Activity로 선택한다 .

유니티에서 나의 프로젝트의 Minimum Api Level을 확인하자 .

MinimunSDK에 같은 API Level을 입력한다 . Finish를 눌러 프로젝트를 생성한다 .

프로젝트를 생성하면 최초로 프로젝트를 구성하는 시간이 소요된다.

프로젝트 구성이 완료된 이후 'Gradle Scripts' 하위의 build.gradle (Module: app) 파일을 열어서 다음 내용들을 수정하자.

  • plugins의 com.android.application을 com.android.library로 변경
  • defaultConfig의 applicationId 삭제
  • versionCode/versionName 삭제

이후 SyncNow를 눌러준다 .

기존의 res 디렉토리 컨텐츠를 참고하는 부분을 삭제한다.

app 항목을 확장하여 manifests 디렉토리 하위의 AndroidManifest.xml 파일의 application 부분을 전부 삭제한다.

기존의 유니티 프로젝트에 있었던 res 디렉토리를 복사한다.

app 항목을 확장하면 res 디렉토리가 있는 것을 확인할 수 있다.

Android Studio의 res 디렉토리 내의 모든 파일들을 Unity 프로젝트의 res 디렉토리로 교체해준다.

이때 , 유니티에서 가져왔다면 meta 파일이 있으므로 삭제해준다 .

이제 1.Gradle 패널로 이동 => 2.Gradle Task 실행창으로 이동 => 3.assembleRelease 라는 이름의 gradle task 입력후엔터

빌드가 완료되었다 .

'${AndroidStudio프로젝트경로}/app/build/outputs/aar'  경로에 aar 파일이 생성되었다 .

 

aar 유니티 공식문서

 

Unity - Manual: AAR plug-ins and Android Libraries

Building and using plug-ins for Android AAR plug-ins and Android Libraries Use Android Libraries to reuse components across multiple applications, or build variations of one app with the same core components. Android Libraries compile into Android Archive

docs.unity3d.com

해당 파일은 아무곳에나 있어도 상관없지만 관습적으로 사용하는 Plugins - Android에 넣어주자 .

빌드가 성공적으로 됨을 볼 수 있다 .

이제 앱의 이름은 설정 언어에 따라 로컬라이징 될 것이다 .

 

 

출처

https://devparklibrary.tistory.com/44

 

[유니티 / iOS] iOS 앱 이름 다국어 설정하기

유니티 버전 : 2019.4.71f xCode 버전 : 11.6 iOS 앱의 이름을 기기의 언어설정에 따라 해당 언어로 나오게 하는 방법입니다. 안드로이드는 아래 글을 참고해주세요. [Unity] 유니티 앱 이름 다국어 적용하

devparklibrary.tistory.com

https://quve.tistory.com/10

 

[Unity] Providing Android resources in Assets/Plugins/Android/res was removed 문제 해결 방법

문제 원인 Unity 2021.2 버전부터 안드로이드 빌드 시 Assets/Plugins/Android/res 디렉토리를 이용하여 리소스를 관리하는 방식이 제거 되었습니다. (공식 문서 링크) Unity - Manual: Upgrading to Unity 2021.2 Upgradin

quve.tistory.com