2010-09-02 10 views
6

De forma predeterminada, la ubicación predeterminada del sistema Android es EE. UU. Y el idioma es en. Pero quiero establecer la ubicación predeterminada en otro país. Por lo tanto, los usuarios verán su idioma materno la primera vez que inicien Android.¿Cómo puedo modificar la configuración regional predeterminada en android?

He intentado modificar el código (/dalvik/libcore/luni/src/main/java/java/util/Locale.java), cambié el valor predeterminado de la configuración regional. Pero no tiene efecto.

¿Me puede decir cómo establecer la ubicación predeterminada?

* Quiero hacer una imagen de Android, y luego grabarla en el dispositivo, cuando el Android se inicia por primera vez, quiero que su idioma no sea el inglés sino el otro idioma.

+2

Eliminar mi respuesta porque no entendí la pregunta. Para aclarar para cada lector: La pregunta se dirige a una versión personalizada de Android (rom personalizada), no a la aplicación – WarrenFaith

Respuesta

3

gracias por todo lo que responda.

He encontrado el método para cambiar el idioma predeterminado.

acaba de modificar el file(build/core/Makefile).

conjunto PRODUCT_DEFAULT_LANGUAGE y PRODUCT_DEFAULT_REGION a lo que desea establecer.

+0

Esa línea es algo así como: PRODUCT_DEFAULT_REGION = "$ (call default-locale-region, $ (PRODUCT_LOCALES))" \ ------- ¿Qué es un valor de ejemplo ?! –

0

lo puede hacer cualquier cosa que desee establecer idioma/país/Información local de la variante del país ..

U puede utilizar java.util.Locale

y método de uso getISOcounty, getISOLanguage etc ... muy fácil ..

a conocer más en detalle pasar por http://developer.android.com/reference/java/util/Locale.html

que ayudará u ..

¿Responde a su pregunta? necesita ayuda no dude en enviar ..

Gracias Rakesh

+0

Esto no es realmente lo que ha pedido. Básicamente está tratando de crear su ROM personalizada con una configuración predeterminada personalizada como WarrenFaith ya mencionado. –

+0

gracias por su respuesta. en realidad, solo quiero modificar el valor predeterminado de la configuración regional. no llamando a un método. eso significa: lo que quiero es que si nadie ha cambiado la configuración regional, la configuración regional predeterminada no es EE. UU., Sino la configuración regional que deseo. – aooray

0

¿Ha comprobado ya en esta área?

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

Empieza en la línea 212 en Locale.java. ¿Es esta la parte en la que ha establecido sus valores predeterminados? Si es así, publique ese bit para que pueda verificarlo.

EDITAR: En realidad, si puede publicar todo su Locale.java en Pastebin. http://pastebin.com/

+0

sí, lo he modificado. he subido el Locale.java. http://pastebin.com/VF5zyktq – aooray

+0

Es extraño que hayas hecho lo que hubiera hecho. Trataré de encontrar una solución, pero esto podría llevar algún tiempo. –

2

hago acumulación cliente a través de la acumulación/destino/producto/core.mk
Muestras:

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

Esto es lo que hago para hacer una simplificada-chino acumulación cliente.

Cuestiones relacionadas