세상사는 이야기 / 도움이 되었다면 배너 클릭 부탁드려요~ →→→

2018년 9월 13일 목요일

[Unity Android] Android 언어별 Appicon, App이름 변경

[Unity Android]  언어별 Appicon, 이름 변경
언어별로 icon과 앱이름을 변경과정을 정리하였다.

1. 언어별 AppIcon 설정
Plugs/Android/res폴더 아래
사용할 Icon을 국가, 사이즈 별로 폴더에 넣는다.
(mipmap 추가)

  • ldpi (저밀도) ~120dpi : 36x36 (0.75x)
  • mdpi (중간 밀도) ~160dpi : 48x48 (1.0x 기준)
  • hdpi (고밀도) ~240dpi : 72x72 (1.5x)
  • xhdpi (초고밀도) ~320dpi : 96x96 (2.0x)
  • xxhdpi (초초고밀도) ~480dpi : 144x144 (3.0x)
  • xxxhdpi (초초초고밀도) ~640dpi : 192x192 (4.0x)
    (런처 아이콘에만 해당, 위의 참고 참조)


확인 방법
시스템 언어를 한국어로 설정했을 경우
[환경설정] -> [언어 및 키보드] -> [언어 선택] -> 언어 변경



2. 언어별 AppName 설정
Plugs/Android/res폴더 아래
values-[언어코드] 아래 strings.xml 파일을 수정한다.

values : 디폴트
values-ko : 한국어
values-ja : 일본어
values-zh : 중국어

  • res/values-ko/strings.xml 한글
    • xml 인코딩 주의! UTF-8(+)로 저장
  • res/values-zh-rCN/strings.xml 중국어 간체
  • res/values-zh-rTW/strings.xml 중국어 번체




주요 해상도별 대표 디바이스 화면 크기
ldpi(120dpi /기타 소형단말기) : 240 x 320
mdpi(160dpi/G1, 옵티머스원): 320 x 480
mdpi(160dpi/G1, 갤럭시 탭 7.0,):600 x 1024
mdpi(160dpi/G1, 모토롤라 Xoom 10,갤럭시탭 7.7 & 10.1):1280 x 800
hdpi(240dpi / 갤럭시 S/S2) : 480 x 800
hdpi(240dpi / 모토로라 드로이드, XPERIA X10) : 480 x 854
xhdpi(320dpi / 갤럭시 S3/노트II ) : 720 x 1280
xhdpi(320dpi / 삼성 갤럭시 넥서스 ) : 720 x 1194 or 1280
xhdpi(320dpi / 삼성 갤럭시 노트I : 800 x 1280
xhdpi(320dpi / LG 옵티머스G, 넥서스4) : 768 x 1280
xxhdpi(480dpi / 갤럭시 S4 & 옵티머스G프로) : 1080×1920
xxxhdpi(640dpi / LG G3) : 1440×2560

mdpi 는 기준 밀도입니다. mdpi 에서1 px 는 1 dip 와 같습니다. 비율은 아래 표를 참고하세요.
ldpi | mdpi | tvdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
0.75 | 1    | 1.33  | 1.5  | 2     | 3      | 4

아이콘 크기는 아래 표를 참고하세요.
ldpi    | mdpi    | tvdpi    | hdpi    | xhdpi     | xxhdpi    | xxxhdpi
36 x 36 | 48 x 48 | 64 x 64  | 72 x 72 | 96 x 96   | 144 x 144 | 192 x 192

픽셀 밀도는 아래 표를 참고하세요.
ldpi  | mdpi  | tvdpi  | hdpi  | xhdpi  | xxhdpi  | xxxhdpi
120   | 160   | 213    | 240   | 320    | 480     | 640
참고 링크
http://egloos.zum.com/sweeper/v/3189739
http://limchaeng.tistory.com/24

2018년 9월 10일 월요일

[Unity] Api Compatibility Level .Net 4.x 가 보이지 않을때


Unity  Api Compatibility Level .Net 4.x 가 보이지 않을때

Project Setting -> Scripting Runtime Version .Net 4.x -> Api Compatibility Level .Net 4.x 가 보이지 않을때 

.Net Framework 4.x 버전이 설치 되어 있지 않으면 보이지 않는다.
Viausl Studio Installer 실행 ->사용할 net Framework 설치

수정 -> 개별구성요소 ->".Net Framework 4.6 타기팅 팩" 체크 설치

Project Setting -> Scripting Runtime Version .Net 4.x -> Api Compatibility Level .Net 4.x 선택


.net 4.x 기능들

[Unity] Firebase 설치시 Net4.x 에러

Firebase 버전을 올리고 아래 에러가 발생했다.


error CS0012: The type `System.Threading.Tasks.Task' is defined in an assembly that is not referenced. Consider adding a reference to assembly

Firebase 설명 문서에 나와있듯 SDK 내에는 Unity.Tasks.dll, Unity.Compat.dll 두개의 파일은 Net 4.5버전과 다른버전 2가지를 모두 가지고있다.
둘중 하나를 지워주면 수정된다.



알려진 문제
Unity 2017.x .NET 4.x 프로젝트에 플러그인 설치
.NET 4.x 지원은 Unity 2017 이상 버전의 시험용 빌드 옵션으로 제공됩니다. 이전 버전의 .NET에서는 Firebase 플러그인이 Parse SDK 구성요소를 사용해 일부 .NET 4.x 클래스를 제공합니다. 따라서 Firebase를 .NET 4.x 지원 프로젝트로 가져올 경우 Parse SDK로 구현된 일부 .NET 4.x 프레임워크 유형에서 컴파일 오류가 발생할 수 있습니다.
컴파일 오류 해결 방법은 다음과 같습니다.
모든 플랫폼에서 다음 DLL을 삭제하거나 사용 중지합니다.
모든 플랫폼에서 다음 DLL을 사용 설정합니다.
  • Parse/Plugins/dotNet45/Unity.Compat.dll
  • Parse/Plugins/dotNet45/Unity.Tasks.dll
다른 Firebase 플러그인을 가져오는 경우
메뉴 항목 Assets > Play Services Resolver > Version Handler > Update 를 선택해 .NET 4.x DLL을 다시 사용 설정하고 .NET 3.x DLL을 사용 중지합니다.


Update 하지 않으면 아래 에러

error CS0012: The type `System.Threading.Tasks.Task`1<Firebase.DependencyStatus>' is defined in an assembly that is not referenced. Consider adding a reference to assembly `Unity.Tasks, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'