2011-08-17 8 views
5

Tengo una aplicación para iPad creada con Sencha Touch para representantes de ventas. El problema es que algunos de los usuarios se agotan y no tienen acceso a Internet. Por lo tanto, queremos construir una aplicación para iOS "nativa" que les permita usar la aplicación incluso sin acceso a Internet. Estoy esperando usar PhoneGap para usar mucho del código actual.¿Cómo autenticar sin acceso a internet en PhoneGap?

El problema con el que me estoy enfrentando mientras planifico esto es la autenticación.

Actualmente, la aplicación autentica a los usuarios contra una base de datos remota utilizando PHP. Con la aplicación PhoneGap nativa, ¿hay alguna forma de manejar la autenticación localmente cuando un usuario no tiene acceso a Internet? ¿Puedo hacer una opción local segura, y si es así, cómo? ¿Es tan simple como autenticarse contra un archivo XML o JSON en mi proyecto PhoneGap?

Nota: Sé que esto resulta totalmente ignorante para quienes lo entienden y me disculpo. Nunca he trabajado con otra cosa que tecnologías web puras, donde el lado del cliente y el lado del servidor son claras para mí. No he hecho nada con los lenguajes compilados.

No entiendo qué tan seguro es JS (o si lo es) cuando usa PhoneGap para empaquetarlo como una aplicación nativa. ¿Es tan transparente como lo sería en la web?

¿Puede un usuario malintencionado con la aplicación instalada en su teléfono ver mi JavaScript, etc.?

Respuesta

0

Agregue un plugin/servidor web local. Si está "fuera de línea", conéctese para autenticarse. Puede activar el complemento para sincronizar las credenciales de autenticación bajo demanda o en un intervalo, y encriptar los contenidos. No haría JS para almacenar todo esto.

1

La primera vez que el usuario inicia sesión con éxito en Internet, almacene las variables necesarias en el almacenamiento local (es decir, nombre de usuario y contraseña hash). Luego use esas variables para autenticarse si el usuario está fuera de línea. No es posible ver el código fuente o los scripts de manera simple una vez que la aplicación se haya empaquetado con Phonegap.

Cuestiones relacionadas