2010-09-02 125 views
6

默認情況下,android系統的默認位置是美國,語言是en。 但我想將默認位置設置爲其他國家/地區。所以,用戶在第一次啓動android時會看到他們的母語。如何修改android中的默認語言環境?

我試圖修改代碼(/dalvik/libcore/luni/src/main/java/java/util/Locale.java),更改了語言環境的默認值。但沒有效果。

你能告訴我如何設置默認位置嗎?

*我想製作一個android圖片,然後將其刻錄到設備,當android第一次啓動時,我想它的os語言不是英語,而是其他語言。

+2

刪除我的答案,因爲我誤解了這個問題。爲每個讀者澄清:該問題的目標是定製的Android構建(自定義ROM),而不是基於應用程序 – WarrenFaith 2010-09-02 13:43:21

回答

3

感謝您的回覆。

我找到了更改默認語言的方法。

只是修改file(build/core/Makefile)

PRODUCT_DEFAULT_LANGUAGEPRODUCT_DEFAULT_REGION設置爲您要設置的值。

+0

該行類似於:PRODUCT_DEFAULT_REGION =「$(調用default-locale-region,$(PRODUCT_LOCALES))」\ -------什麼是示例值? – 2015-12-23 06:29:06

0

你可以做任何你想做的設置國的當地語言/國家/變種的信息..

U可以使用java.util.Locale中

和使用方法getISOcounty,getISOLanguage等等 很容易..

瞭解更多的詳細經過 http://developer.android.com/reference/java/util/Locale.html

這將幫助ü..

它回答你的問題嗎? 需要任何幫助隨意張貼..

由於拉克什

+0

這不是他所要求的。他基本上正在嘗試用自定義默認語言環境(如WarrenFaith)創建自定義ROM。 – 2010-09-02 14:26:41

+0

感謝您的回覆。 實際上,我只是想修改語言環境的默認值。 不是通過調用方法。 這意味着:我想要的是如果沒有人已經改變了語言環境,默認語言環境不是美國,但我想要的語言環境。 – aooray 2010-09-03 02:00:29

0

你是否已經簽出這部分?

private Locale() { 
    languageCode = "en"; //$NON-NLS-1$ 
    countryCode = "US"; //$NON-NLS-1$ 
    variantCode = ""; //$NON-NLS-1$ 
} 

它從Locale.java的第212行開始。這是您設置默認值的部分嗎?如果是這樣,請張貼一點,這樣我就可以檢查出來。

編輯:其實如果你可以發佈你的整個Locale.java上Pastebin。 http://pastebin.com/

+0

是的,我修改了它。 我已經上傳了Locale.java。 http://pastebin.com/VF5zyktq – aooray 2010-09-03 02:08:47

+0

奇怪,你做了我會做的。我會盡力尋找解決方案,但這可能需要一些時間。 – 2010-09-03 21:15:11

2

我通過編譯/目標/產品使客戶構建/ core.mk
樣品:

PRODUCT_PROPERTY_OVERRIDES := \ 
    ro.config.notification_sound=OnTheHunt.ogg \ 
    ro.config.alarm_alert=Alarm_Classic.ogg \ 
    ro.config.ringtone=BirdLoop.ogg \ 
    persist.sys.language=zh \ 
    persist.sys.country=CN \ 
    persist.sys.timezone=Asia/Shanghai

這是我做的做了簡化,中國客戶打造。

相關問題