안녕하세요.  볼레로입니다.

Windows CE의 경우,  OS 빌드할 때,  최종 지원 OS를  설정창에서 지정하고 빌드하면,
바로 한글이던  일본어 이던 생성이 가능합니다.

안드로이드 OS도  이런 것이 있을 텐데요. 

의외로 이것을 대한 정보가  웹에 없더군요.  


구글에서 검색해보면 대부분이  멀티 언어 지원이나  APP 입장에서  locale 설정이 대한 것이 대부분이더군요.
정보의 홍수/바다라서 원하는 정보를 찾기가 힘든 것인지도 모르겠습니다.


"OS 가 처음 부팅 했을 때,  원하는 언어로 실행되게 하고 싶은데요. "


방법이 있을 텐데,   참 찾기 힘들더군요.

2번시도 하고,  총 2일정도 걸려서 겨우 찾았습니다 ㅡ.ㅡ
찾고 보면 별것도 아닌건데... 쩝...


안드로이드의  현재 설정  언어/국가/timezone 등은

/data/property 디렉토리에 

persist.sys.timezone
persist.sys.language
persist.sys.country

이런 파일명으로  저장되어 있습니다.

설정에서  언어들 바꾸고,  위 위치에 가서  cat 등으로 보시면 저장된 값이 바뀌어 있는 것을 보실 수 있습니다.


즉,  부팅시에  이 파일이 있으면  해당 언어로  안드로이드 OS가 구동이 된다는 것입니다.



그럼,  위 파일을  저장해 주는  방법이  OS 빌드 중에 어딘가에 있겠지요.

이것은  init.rc 파일에 적어주면 되더군요.

OS의 소스 디렉토리 중에서 

vender/업체/프로젝트/  로 된 디렉토리에 가시면,  init.rc 파일이 있는데요.

 
# killed by the kernel.  These are used in ActivityManagerService.
    setprop ro.FOREGROUND_APP_ADJ 0
    setprop ro.VISIBLE_APP_ADJ 1
    setprop ro.SECONDARY_SERVER_ADJ 2
    setprop ro.BACKUP_APP_ADJ 2
    setprop ro.HOME_APP_ADJ 4
    setprop ro.HIDDEN_APP_MIN_ADJ 7
    setprop ro.CONTENT_PROVIDER_ADJ 14
    setprop ro.EMPTY_APP_ADJ 15

    # for  default langudage 
    setprop persist.sys.language ko
    setprop persist.sys.country KR
    setprop persist.sys.timezone Asia/Seoul


위의  아래쪽 3줄 처럼 넣어 줍니다.

setprop 의  위치가 중요하지는 않을 수도 있는데요.
전 저 위치에 넣었습니다.

이렇게 해서 OS를 빌드하면,

최초 실행시에도 한글로  나온답니다.



수고하세요 ^^


PS : 간단한  정보라도 공유 합시다.   작은 정보가 다른분들에게  엄청난 시간을 줄일 수도 있답니다 ^^