2009-11-04 35 views

Respuesta

2

La forma preferida de manejar diferentes configuraciones de hardware parece ser define different Resources and let Android pick the relevant one for the hardware. La documentación dice:

Puede suministrar diferentes recursos para que la use su aplicación según el idioma de la interfaz de usuario o la configuración de hardware en el dispositivo. Tenga en cuenta que aunque puede incluir diferentes cadenas, diseños y otros recursos, el SDK no expone los métodos para permitirle especificar qué recursos alternativos se configuran para cargar. Android detecta el conjunto adecuado para el hardware y la ubicación, y los carga según corresponda.

Sin embargo, no hay nada que le impida tener varias versiones de un archivo de propiedades en su aplicación y utilizarlas para determinar la configuración difícil. Por ejemplo, una versión del archivo contendría dpad = true y otra tendría dpad = false y Android elegiría la versión del archivo que coincidía con el hardware y luego puede leer la propiedad dpad. Es cierto que esto sería bastante tedioso, pero no puedo encontrar una forma más fácil en la API para hacer esto.

2

Puede usar getResources().getConfiguration().

Por ejemplo:

getResources().getConfiguration().navigation

El tipo de método de navegación disponible en el dispositivo. Uno de: NAVIGATION_DPAD, NAVIGATION_TRACKBALL, NAVIGATION_WHEEL.

Cuestiones relacionadas