현재 회사의 앱에서
영어와 한국어, 이렇게 두 글로벌 언어를 두고,
기기에서 언어에 맞게 대응하고 있다.
그러다가, 자바 코드에서 언어뿐만 아니라, 해당 언어에 따라,
ui나 메서드를 달리하고 싶은 일이 생겼다.
그렇게 해서 알아낸 코드가 이것이다.
Locale mSysLocale = getResources().getConfiguration().locale;
String strLanguage = mSysLocale.getLanguage();
다음 코드를 사용하면,
현재 디바이스에 설정되어 있는 언어 코드가 String에 담긴다.
메서드를 만들어 예를 들면
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
new Locale().getLocale(); //한글이면 ko, 영어면 eu
}
}
class Locale {
public String getLocale() {
return getResources().getConfiguration().locale.getLanguage();
}
}
대충 이런식으로, 한글이면 ko, 영어만 eu 등 그 해당 국가를 표시하는 Locale를 보내준다.
그러면 해당 값을 통해 언어마다 다르게 코드를 짜면 된다.
다른 언어의 Locale 표기를 보고 싶다면, GooglePlayConsole에서 지원하는 언어를
보여주는 아래 링크에서 확인할 수 있다.
https://support.google.com/googleplay/android-developer/table/4419860?hl=ko
실시간 업데이트 요소수 앱 "요소수 주유소"
구글 플레이 스토어에서 만나보세요.
https://play.google.com/store/apps/details?id=com.diesel.gasstation