본문 바로가기

구글과인터넷/안드로이드

안드로이드 리소스(Resource) 폴더 생성 규칙

* 국제화 

안드로이드에서는 리소스 폴더이름에 추가 정보를 주어 각 상황에 맞는 가장 적합한 리소스를 선택할 수 있도록 구성되어있다.
res/value 라는 폴더이름에 아래의 정보를 추가할 수 있다. 각 정보는 - 으로 붙여주며 아래의 순서에 맞게 나타나야 한다.

언어: ISO 639-1 언어코드사용 (참고 http://www.loc.gov/standards/iso639-2/php/English_list.php

지역: 소문자 r뒤에 대문자로된 ISO 3166-1-alpha-2 언어코드사용 (참고 

http://ko.wikipedia.org/wiki/ISO_3166-1 )
화면방향: port(세로), land(가로), square(정사각형)중 하나가 쓰임.
화면픽셀밀도: 인치당 도트수(dpi) 예를 들면92dpi와 같이 사용됨)
터치스크린타입: notouch, stylus, finger중 하나가 쓰임.
키보드사용: keysexposed, keyshidden중 하나가 쓰임.
키보드입력타입: nokeys, qwerty, 12key중 하나가 쓰임.
UI탐색타입: notouch, dpad, trackball, whell중 하나가 쓰임.
화면해상도: 픽셀로 표현된 화면 해상도 반드시 큰수치가 먼저 오도록 기록한다. 예를 들면 320x240

예)
values-kr-rKR-land-nokeys-320x240 으로 폴더명을 줄수 있다.
이때 안드로이드는 values로 시작하는 폴더들 중 현재 시스템에 가장 적당한 폴더를 선택하여 리소스를 매치시킨다고 한다.

참고. 각 리소스 폴더에 파일은 소문자알파벳과 점(.) 언더바(_) 만으로 이루어져야 한다.
파일 이름과는 관계없이 R클래스에 관련 테그정보가 상수로 자동 정의 된다. 
(자동생성되는 툴을 쓴다는 가정하에서 예를 들면 이클립스 플러그인)