domingo, 29 de agosto de 2010

APIs Privadas

Hace tiempo un alumno me dijo que si la aplicación de inicio del XCode "Window Based Application" era un ejemplo valido de aplicación a modo de linterna. La verdad es que no lo había pensado con detenimiento. Tenía toda la pinta.

Hace poco me lo volvieron a preguntar, pero mi respuesta fue distinta. Puedes hacer que la pantalla se ponga blanca y que la luz ilumine... pero cuando estás a oscuras el brillo del iPhone en la configuración estandar se regula y baja (a menos luz, menos brillo es necesario para ver los contenidos). Luego realmente no es una linterna correcta. Debería encenderse más.

Y luego viene la búsqueda de la función para incrementar el brillo. La respuesta que veo en los foros es: "No se puede. API privada". Mi segundo pensamiento es "¿Stanza lo hace?". La respuesta es "No". Si analizamos Stanza, vemos que es capaz de cambiar el "brillo" de la parte de lectura, el de los controles no cambia. Ergo no cambia el brillo de la pantalla. Lo que hace (o lo que podría hacer) es variar el brillo de una vista. Por ejemplo, podríamos duplicar este comportamiento poniendo una capa negra detrás y variando la opacidad del elemento de lectura. Esto no afecta a los negros pero si a los colores claros. En el caso de la pantalla de texto blanco sobre fondo negro podemos hacerlo al reves.

En cualquier caso, en relación al brillo de la pantalla, solo podemos reducir la cantidad de luz que se emite. No aumentarla (no aumentarla más allá del brillo que tenga la pantalla configurado en ese momento, se entiende...).

Luego las aplicaciones de linterna deben funcionar igual. Es decir, no son tan prácticas como podría parecer... La solució podría estar en el flash del iPhone 4.


No hay comentarios:

Publicar un comentario