2 Problemas
SITO edited this page 2026-08-19 21:08:46 +02:00

Si algo va mal

⚠ Rama experimental, no oficial. El Oasis oficial es https://github.com/epsylon/oasis · Volver a la portada

Todo lo de esta página ha pasado de verdad durante el desarrollo. No es una lista de casos imaginarios.


Al abrir, se queda en una pantalla con un contador

No está colgada, está arrancando. El primer arranque descomprime el servidor —unos 230 MB— y levanta SSB. En el emulador tarda 15 segundos; en un móvil lento, más.

La pantalla enseña los segundos que lleva para que se note que sigue viva. Cuando el servidor responde, carga la interfaz sola.

Si pasa de un par de minutos, mira el registro:

adb logcat -s OASIS-NODE:V

Tiene que llegar a [Oasis] Backend started on port 3000.


Se ve un error de conexión y no se recupera

No debería pasar ya. Si la página no carga, la aplicación vuelve a esperar al servidor y recarga sola la última pantalla que sí cargó.

Antes sí ocurría, y por dos motivos que están arreglados:

  • Al girar el móvil. Faltaba una entrada en la lista de cambios de configuración del manifiesto (smallestScreenSize), así que Android recreaba la pantalla y el navegador interno recargaba antes de tiempo.
  • Cuando Android mataba el servidor por falta de memoria: se quedaba muerta. Ahora vuelve sola en unos veinte segundos.

No se puede instalar: falta espacio

INSTALL_FAILED_INSUFFICIENT_STORAGE

La APK son unos 80 MB y el servidor se descomprime dentro de los datos de la aplicación: cuenta con unos 350 MB libres.

Ojo con una trampa: Android rechaza instalar cuando el disco baja de cierto umbral, aunque el hueco dé de sobra para la APK. En un emulador se ve así, con 500 MB libres y una APK de 80. Si te pasa en un emulador de pruebas:

adb shell settings put global sys_storage_threshold_percentage 2

En un móvil de verdad, libera espacio y ya está.

Instalé una APK nueva pero se comporta como la vieja

Pasa si el paquete del servidor no se rehizo. La APK lleva el backend dentro como un zip, y si se compila sin volver a empaquetarlo, la aplicación arranca con el código anterior.

Usa siempre el script, que lo rehace y lo comprueba:

cd android
./scripts/release.sh

Verifica que la APK lleva el servidor, el motor de Node y los dos permisos de cámara y micrófono. Ver Compilar la APK.

No deja instalar: dice que es una versión anterior

INSTALL_FAILED_VERSION_DOWNGRADE

El número de versión sale del número de commits. Si compilas a mano con ./gradlew sin las variables de entorno, sale 1, que es menor que la instalada. Compila con ./scripts/release.sh, que lo calcula.

Al pulsar Llamar no pasa nada

Comprueba, por este orden:

  1. Que concediste los permisos. Ajustes → Aplicaciones → Oasis → Permisos. Si dijiste Don't allow, no se vuelve a preguntar.
  2. Que la APK los declara. La oficial no lo hace, y entonces ni siquiera aparecen como opción:
    aapt dump permissions oasis.apk | grep -E "CAMERA|RECORD_AUDIO"
    
  3. Que hay otro participante. Una llamada con uno solo enciende tu cámara y poco más. Ver Llamadas.

Los iconos se ven como cuadros vacíos (□)

En el móvil no debería pasar. En escritorio sí, y no es un fallo de Oasis: usa caracteres Unicode poco comunes y al sistema le falta una fuente que los cubra.

sudo apt install fonts-noto-core     # Debian, Ubuntu y derivadas

¿Mis fotos llevan mi ubicación?

Ya no. Al subir una imagen se le quitan los metadatos antes de guardarla: GPS, marca y modelo, número de serie y fecha. Se conservan la orientación y el perfil de color, y los píxeles quedan intactos.

Puedes comprobarlo con cualquier foto tuya:

identify -verbose foto_descargada.jpg | grep -i "exif:"

Tiene que salir como mucho Profile-exif: 32 bytes, que es solo la orientación.

Estuvo roto en Android una temporada: el limpiador dependía de una biblioteca con binarios nativos que no se empaqueta en el móvil, y al no estar devolvía la imagen intacta sin avisar. Si usas una APK anterior a esto, sigue pasándote.

Se cierra al salir de la aplicación

No debería: el servidor corre como servicio en primer plano justamente para seguir replicando en segundo plano. Comprobado a los veinte minutos.

Si se corta, mira si la notificación de Oasis sigue en la barra. Si la denegaste, el sistema puede matar el servicio antes con la memoria justa. Se vuelve a conceder en Ajustes → Aplicaciones → Oasis → Notificaciones.

Cambié de identidad y sigo viendo la anterior

El cambio se aplica al reiniciar, no al momento. En el móvil hay un botón Reiniciar ahora en la misma pantalla; sin él, cerrar la aplicación no basta porque el servidor sigue vivo en segundo plano. Ver Identidades.