Android

Android 13에 새롭게 도입된 개별 언어 설정 적용(android:localeConfig)

애플리케이션 개별 언어 설정은 Android 13에 도입된 새로운 기능으로, 각 앱에 개별적으로 언어를 설정할 수 있으므로 시스템의 전역 언어 설정을 무시할 수 있습니다.  Android 13의 공식 버전에서 앱이 이 기능을 지원하도록 하려면 AndroidManifest.xml 파일에서 android:localeConfig 특성을 구성해야 합니다.
 
먼저 res/xml 디렉토리에 locales_config.xml 파일을 만들고 앱에서 지원하는 언어 목록을 구성합니다. 

<locale-config xmlns:android="http://schemas.android.com/apk/res/android">
    <locale android:name="en"/>
    <locale android:name="ko"/>
    <locale android:name="fr"/>
    <locale android:name="ja"/>
    <locale android:name="zh"/>
</locale-config>

다음으로 다음과 같이 AndroidManifest.xml에서 이 locales_config.xml 파일을 참조합니다.

<manifest>
    <application
        ...
        android:localeConfig="@xml/locales_config">
    </application>
</manifest>

휴대폰 설정에서 시스템의 애플리케이션별 언어 설정 목록에 앱이 나타납니다.

사용자가 한국어를  선택하면 휴대폰 시스템의 언어가 영어라도 우리 앱에 표시되는 텍스트는 한국어입니다.

Android 14에서는 이 기능이 확장되었으며 현재 Developer Preview 버전에는 두 가지 기능이 추가되었습니다.

첫째, 이제 LocaleManager의 setOverrideLocaleConfig() 메서드를 호출하여 Android 13과 같이 AndroidManifest.xml에서만 구성하는 대신 현재 애플리케이션에서 지원하는 언어 목록을 동적으로 설정할 수 있습니다.

언어 목록을 동적으로 설정하는 기능을 사용하면 지원되는 언어 목록을 클라우드를 통해 서버에서 제어할 수 있는 등 유연성이 높아집니다.

둘째, 입력 방법 소프트웨어는 LocaleManager의 getApplicationLocales() 메서드를 호출하여 현재 앱에 표시되는 언어를 가져올 수 있습니다. 이러한 방식으로 키보드는 사용자의 입력 요구 사항을 충족하도록 대상 방식으로 조정할 수 있습니다.
  

[reference]

  • https://blog.csdn.net/guolin_blog/article/details/129460619
  • https://blog.csdn.net/guolin_blog/article/details/124061726

 

Leave a Reply

error: Content is protected !!