2012-12-19 2 views
2

6 개국에서 작동하는 I18N 응용 프로그램에서 작업하고 있습니다. 사용자가 설정에서 언어를 변경하면 응용 프로그램을 다시 시작하고 변경된 언어로 응용 프로그램을 표시해야합니다. . 왜냐하면 나는 공유 환경 설정에 언어 값을 저장하고 현재 언어 값과 비교하기 때문입니다. 값이 같지 않으면 응용 프로그램을 다시 시작해야합니다. 이를 위해 아래 코드를 사용하고 있습니다 :프로그래밍 방식으로 다시 android 응용 프로그램을 실행하십시오

문법적으로 안드로이드 응용 프로그램을 다시 시작하기위한 코드를 제공하십시오. 감사 가네

+4

. 매니페스트의 configChanges 필드에 * 로캘 *이 없으면 안드로이드가 작업을 다시 시작하면됩니다. – njzk2

+0

활동을 다시 시작하고 싶지 않습니다. 시작부터 전체 어플리케이션을 다시 시작해야합니다. – Ganesh

+0

그러면 configChanges 필드에 실제로 ** 로케일 **을 가질 수 있으며 활동의 onConfigChange에서 로케일 변경 사항을 수신 할 수 있습니다 – njzk2

답변

3

보십시오 : 당신은 그것을 위해/재시작을 죽일 필요가 없습니다

Intent intent = getBaseContext().getPackageManager().getLaunchIntentForPackage(  
getBaseContext().getPackageName()); 
intent .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); 
startActivity(intent); 
관련 문제