Saltar al contenido

Problemas conocidos

Recarga en vivo de Ionic

  • Cuando desarrolles, si usas la función de recarga en vivo de Ionic desde la CLI, anulará el plugin, por lo que nunca verás tu actualización

Recarga en vivo de Quasar

  • Utiliza el mismo sistema que Ionic internamente, por lo que no verás tus actualizaciones

Fallos en actualizaciones

  • Esto suele ocurrir cuando se envían grandes actualizaciones (> 20mb), un gran porcentaje de usuarios no obtendrá la última versión En el pasado, los usuarios necesitaban mantener la aplicación abierta hasta que la descarga se completara, ahora usamos descarga en segundo plano, pero aún está limitada a unos pocos segundos

Android

No se puede descargar

Hemos visto algunos problemas con dispositivos en India, y al contactar con usuarios, les hicimos probar diferentes servidores DNS, y funcionó

Así que si tienes el problema, intenta usar un servidor DNS diferente como Cloudflare o Google DNS

Cloudflare: 1111 y 1001

Google DNS: 8888 y 8844 o dnsgoogle

Auto-alojado

Cuando estás enviando una actualización auto-alojada, ten en cuenta que no puedes usar endpoints “HTTP” ya que va contra las políticas de seguridad de las aplicaciones Android, si aún quieres hacerlo, sigue esta guía:

Descompresión

Problema de descompresión: Las entradas DEFLATED pueden tener descriptor EXT

Si comprimiste tu paquete con algo diferente a la CLI, el formato de tu zip podría ser incorrecto, por favor usa el comando CLI npx @capgo/cli zip BUNDLE_FOLDER

Este es un problema conocido de Java:

Problema de Clearfix

  • Si tienes problemas con usesCleartextTraffic, es porque el plugin sigue las buenas prácticas recomendadas por sonar cloud, en el 90% de los casos funcionará bien, pero con algunos plugins causa problemas

Para solucionarlo, agrega en android/app/src/main/AndroidManifestxml en la clave <application>:

tools:replace="android:usesCleartextTraffic"
xmlns:tools="http://schemasandroidcom/tools"

iOS

Manifiesto de privacidad

Agrega la clave de diccionario NSPrivacyAccessedAPICategoryUserDefaults a tu Manifiesto de Privacidad (normalmente ios/App/PrivacyInfoxcprivacy):

<?xml version="10" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 10//EN" "http://wwwapplecom/DTDs/PropertyList-10dtd">
<plist version="10">
<dict>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<!-- Agrega esta entrada dict al array si el archivo ya existe -->
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA921</string>
</array>
</dict>
</array>
</dict>
</plist>

Recomendamos declarar CA921 como razón para acceder a la API UserDefaults

Permisos de red

Cuando uses un servidor local para probar actualizaciones, la aplicación pedirá permisos de red, es un comportamiento normal, no sucede cuando usas un servidor remoto

Ambos sistemas operativos

Cuando se realizan actualizaciones en modo manual, algunos eventos no son fáciles de capturar, por ejemplo, el fallo de actualización se dispara justo antes de que tu código JS se recargue, por lo que no podrás capturarlo

Una alternativa es listar los paquetes y verificar las estadísticas de error para saber si la actualización falló

Necesitamos encontrar una mejor manera de manejar esto en el futuro, pero no es una prioridad, ya que el modo automático es la forma recomendada de hacer actualizaciones

Los PRs son bienvenidos para ayudarnos a mejorar esto

CLI

si tu CLI tiene problemas haciendo cualquier cosa,

Verifica si appId y appName están presentes en tu capacitorconfigts

Sigue la guía de la documentación oficial: