본문 바로가기
Study/Android

디바이스 언어 가져오기!!

by Answer Choi 2015. 2. 12.
반응형




앱을 만들다 보면 언어별로 분류를 해야 할 일이 있습니다. 

 

string이라던지, image라던지...


이럴경우 res폴더 밑에 values나 drawable 폴더를 같은 이름으로 만들고 뒤에 구분할 언어(한글이면 ko)를 


붙여 폴더를 만들고 같은이름의 파일을 넣으면 한국어와 한국어가 아닌것이 자동 구분됩니다.


이건 다음에 한번 보여드릴께요.


이번에 할 것은 특정언어(국가별로 구분하는 건 아님)에서만 특정한 작업을 하고 싶을때 쓰는 방법입니다.


예를 들면 게임을 만들었는데, 한국에서는 등급을 받아서 등급표시를 해주고, 외국에서는 등급표시를 해주지 않아도


된다고 생각합시다.

 




이럴 경우 등급표시가 한글이기 때문에 굳이 외국사용자(안드로이드 단말기가 한글이 아닐경우)에게 보여줄 필요가 없죠.

 

이때 한글을 쓰는 단말기를 구분해서 뿌려줘야합니다.

 

현재 단말기의 언어를 가져오는 코드는 아래와 같습니다.


  1.         Locale mLocale = getResources().getConfiguration().locale;
  2.         String language = mLocale.getLanguage();
  3.         Log.e("lng",language);
  4.         if(language.contains("ko"))
  5.             //한국어인 경우 처리
  6.         else{
  7.             //한국어가 아닌경우 처리
  8.         }

Line 1은 나라및 언어정보등 지역정보를 가져오는 것이구요.


Line 2는 그 중 언어값을 가져오는 코드입니다.


Line 3에서 보시면 설정된 언어 값이 출력됩니다.


한글 단말기라면 ko, 영어 단말기라면 en 이런식으로요.


그리고 Line 4에서 한글 단말기인 경우 처리, Line 6은 한글이 아닌 단말기 처리코드를 넣어주시면 됩니다.

 

 

 

반응형

인기글