Solución de problemas para desarrolladores de DeHub
Los problemas más comunes y cómo resolverlos. El verificador de dehub.io/apps/dev te dice con palabras sencillas qué campo está mal, así que empieza por ahí.
Problemas con el manifiesto
Mensaje
Solución
No se encuentra en /.well-known/dehub.json
Publica el archivo exactamente en esa ruta con https. Muchos alojamientos ocultan las carpetas que empiezan por punto; permite .well-known.
Se encontró, pero no es un JSON válido
Pega el archivo en un validador de JSON. Las comas sobrantes al final suelen ser la causa.
homeUrl debe estar en tu dominio
homeUrl tiene que estar en el mismo dominio que sirve el manifiesto.
ownership.signature: firmado por 0x…, no por 0x…
Firma con la misma billetera que pusiste en ownership.address, o usa el botón Firmar en /apps/dev.
La app debe servirse por https
Localhost y http solo funcionan en la vista previa para desarrolladores (Abrir en /apps/dev), no para enviar.
Cuando la app se ejecuta
Problema
Solución
La pantalla de bienvenida se queda 8 segundos
Llama a dehub.ready() cuando tu primera pantalla esté lista.
Not running inside dehub
La página se abrió por separado. Comprueba dehub.isInDehub() y muestra una versión web normal.
signin error
La persona no ha iniciado sesión en DeHub. Pídele que inicie sesión o deja que use tu app como invitada.
unsupported en pay o addApp
Las vistas previas para desarrolladores no pueden cobrar ni añadirse. Envía la app primero.
La app se ve estirada en escritorio
No debería: DeHub muestra las mini apps en una columna del ancho de un teléfono. Diseña para 375–430 px de ancho.
Los enlaces no hacen nada
Usa dehub.actions.openUrl(url) para enlaces externos; las mini apps no pueden navegar la pestaña de DeHub.
En tu servidor
Problema
Solución
El token falla con un error de audiencia
Pon audience exactamente con el dominio de tu app, sin https:// y sin ruta.
El token falla con un error de caducidad
Los tokens duran una hora. Vuelve a llamar a dehub.auth.getToken() ; el SDK lo renueva.
Notificaciones omitidas como notAdded
Solo quienes añadieron tu app reciben notificaciones. Pídelo con dehub.actions.addApp().
Notificaciones omitidas como rateLimited
Una cada 30 segundos y diez al día por persona. Junta varias novedades en una sola notificación.
429 de la API REST
Espera los segundos de x-ratelimit-reset-* antes de reintentar.