본문 바로가기
카테고리 없음

configChanges

by 아카이sun 2019. 11. 5.

앱 runtime중 환경에 변화가 일어나면 실행중인 activity는 destory되며 재시작됩니다.

이때 activity가 재시작되는 것을 원치 않을때에는 manifest에 android:configChanges의 attribute에 알맞은 값을 넣어서 재시작을 방지합니다.

 

attribute의 속성은 다음과 같은 종류가 있습니다.

 

mcc : SIM 이 Detect 되고 MCC 가 Update. ( IMSI Mobile Country Code가 변한 경우) 

mcc : SIM 이 Detect 되고 MNC 가 Update. ( IMSI Mobile Network Code가 변한 경우 )  

locale : 새로운 언어(Locale)를 변경했을 때

touchscreen : Touch Screen Hardware 가 바뀌었을 때

keyboard : External Keyboard를 꽂았을 때를 비롯해 Keyboard 의 Type이 변경됬을 때

keyboardHidden :  Hardware Keyboard를 보이거나, 감추는 등 Keyboard의 Accessibility가 변경된 경우

navigation :  Navigation Type ( 트랙볼 / DPad ) 가 변경되었을 때 

orientation : 스크린의 Orientation 이 변경되었을 때

screenLayout : 스크린의 레이아웃이 변했을 때, 다른 디스플레이가 활성화 되고 레이아웃이 변한 경우  

fontScale :  font size를 변경했을 때

uiMode: Device 를 Desk 나 Car Dock 등에 비치해 Interface Mode가 변경되었을 때

 

 

configChanges를 설정하면 activity가 재시작되는 대신에  onConfigurationChanged 함수가 호출됩니다.

 

댓글