4

私は自分のアプリケーションでAndroidPhoneのシステム全体の言語を変更しようとしています。なぜなら、私たちの目標は設定アプリケーションをカスタマイズすることだからです。

私はこれを試しましたが、うまくいきませんでした:

Configuration conf = Resources.getSystem().getConfiguration();

conf.locale = toSet;  //toSet is a Locale which I want to set to the system

conf.setToDefaults();

他の試みもうまくいきませんでした:

Locale.setDefault(toSet)

アプリケーションの言語を変更する方法はありますが、システムを変更する方法はありません。

目標を達成する方法はありますか?ルート権限の取得は機能しますか?または、Intent-ActivityのUIインターフェイスを変更する方法はありますか?

ソースコードに "platform/packages/apps/Settings/src/com/android/settings/LocalePicker.java", "com.android.internal.app.LocalePicker" might help, and in the "platform/frameworks/base/core/java/com/android/internal/app",「updateLocale」という名前の関数があることがわかりました。役立つかもしれませんが、「IActivityManager」などのクラスがEclipseでコンパイルエラーを引き起こします。

誰かアイデアはありますか?ありがとう!

4

1 に答える 1

1

これを試して

String languageToLoad = "zh";  
Locale locale = new Locale(languageToLoad);  
Locale.setDefault(locale);  
Configuration config = new Configuration();  
config.locale = locale;  
getBaseContext().getResources().updateConfiguration(config, null);

Androidマニフェスト:

追加android:configChanges="locale"

于 2012-04-26T12:08:24.860 に答える