No me acuerdo exactamente donde pero he leÃdo en varios post en este foro acerca de como desarrollar app para Android y les voy a dar mi punto de vista y como hice para migrar algunos de mis programas escritos para Windows a Android.
La forma más sencilla de crear una app para Android (totalmente off-line, sin necesidad de coneccion a internet) es hacer un hÃbrido ("bridge") entre el Java de Android y la programación web ( html5, css3 y javascript apoyado en una lib tipo jQuery Mobile), este tipo de app son conocidas como WebApp.
La parte de interface grafica y el procesamiento de los datos (calculos, etc) se hace con html y javascript. Mientras que la parte de escritura de archivos y la parte de base de datos se hace con el sqlitle del java de Android.
Se crea una pequeña lib de funciones en Java que luego se las puede invocar directamente desde javascript cuando se necesita por ej para leer o escribir un archivo en el dispositivo móvil, o la cámara o algún sensor, etc.
En la parte de Java de Android
se hace que al arrancar la aplicación se invoque el archivo html correspondiente, el aspecto de la interface es identico a una app escrita totalmente en java (iconos, barra, etc). Después se compila y se genera el archivo apk que luego se instalara en el móvil.
En resumen, es muy sencillo porque el esqueleto en java de todas las webapp es prácticamente el mismo lo único que cambia es la parte web de la aplicación.
Cualquier dÃa de estos que tenga tiempo voy a publicar el esqueleto en Java de una WebApp con las funciones básicas de I/O y la forma de invocar el archivo html al arrancar la app y con ejemplos de como llamar las funciones de Java desde el código javascript.