Files
linkedsign/android_react
2026-04-06 20:34:18 -05:00
..
2026-04-06 20:34:18 -05:00
2026-04-06 20:34:18 -05:00
2026-04-06 20:34:18 -05:00
2026-04-06 20:34:18 -05:00
2026-04-06 20:34:18 -05:00
2026-04-06 20:34:18 -05:00
2026-04-06 20:34:18 -05:00

LinkedSign Android

Aplicación móvil Android de LinkedSign construida con Expo + React Native. Esta app complementa a la versión web y usa el mismo backend.

Objetivo

  • compartir autenticación con la app web
  • guardar la sesión localmente en el teléfono
  • mantener cache local para trabajo móvil
  • sincronizar documentos, certificados y firmados solo cuando el usuario lo solicite

Alcance actual

  • login
  • registro
  • aviso de verificación por correo
  • dashboard con estado de sincronización
  • documentos originales y firmados
  • subida de PDF original
  • descarga y compartir documentos firmados
  • certificados
  • subida de .p12 / .pfx
  • firmado básico usando la configuración visual ya guardada por el usuario
  • perfil y solicitud de cambio de contraseña
  • base local SQLite para cache

Cómo se complementa con la web

  • la web sigue siendo el cliente principal para flujos avanzados
  • Android usa el mismo usuario, misma contraseña y mismo backend
  • la sesión se guarda en el teléfono con expo-secure-store
  • los datos de negocio no se sincronizan solos: el usuario decide cuándo sincronizar
  • el estilo visual de firma se toma del backend, por lo que si lo cambias en la web también se usa al firmar desde Android

Estructura

android/
  App.js
  app.json
  package.json
  src/
    api/
    components/
    config/
    context/
    navigation/
    screens/
    storage/
    theme/
    utils/

Configuración

La URL del backend se define en app.json y puede sobreescribirse con EXPO_PUBLIC_API_BASE_URL.

Valor actual:

{
  "expo": {
    "extra": {
      "apiBaseUrl": "http://192.168.222.72:4000"
    }
  }
}

Ejecutar

cd /home/mgonzalez/desarrollo/react/linkedsign/android
npm install
npm run start

Para compilar o abrir en Android:

npm run android

Sincronización

La app guarda cache local en SQLite para:

  • perfil
  • documentos originales
  • certificados
  • documentos firmados
  • fecha de última sincronización

La sincronización se ejecuta manualmente desde la app. Eso evita sobreescribir datos locales o consumir red sin que el usuario lo pida.

Notas

  • La confirmación de correo y el cambio de contraseña se validan contra el mismo backend de LinkedSign.
  • La validación del enlace de correo puede abrirse en navegador si el enlace apunta al frontend web.
  • Para una prueba real en dispositivo, el teléfono debe poder alcanzar la IP del backend.
  • Este cliente no reemplaza la web; la complementa con acceso móvil, cache local y sincronización bajo demanda.