Saltar al contenido

Problemas conocidos

  • Cuando desarrollas, si utilizas la característica de Ionic live reload desde el CLI, lo sobrescribirá el plugin, por lo que nunca verás tus actualizaciones.
  • Utiliza el mismo sistema que Ionic en el fondo, por lo que no verás tus actualizaciones.
  • Esto suele ocurrir cuando se envían actualizaciones grandes (> 20mb), una gran porcentaje de usuarios no obtendrá la última versión.
    En el pasado, los usuarios necesitaban mantener la aplicación abierta hasta que se completara la descarga, ahora usamos la descarga de fondo, pero todavía está limitada a unos segundos.

Hemos visto algunos problemas con dispositivos en la India, y hemos hablado con el usuario por teléfono, le hicimos probar diferentes servidores DNS, y funcionó.

Si tienes el problema, prueba a usar un servidor DNS diferente como Cloudflare o DNS de Google.

Cloudflare: 1.1.1.1 y 1.0.0.1

DNS de Google: 8.8.8.8 y 8.8.4.4 o dns.google

Cuando estés empujando una actualización autoalojada, ten en cuenta que no puedes usar un ‘HTTP’ como punto de conexión, ya que va en contra de las políticas de seguridad de las aplicaciones de Android, si todavía quieres hacerlo, sigue este guía:

Problema de descomprimir: los elementos DEFLATED pueden tener un descriptor EXT

Si descomprimió su paquete con algo diferente a CLI, el formato o su archivo zip puede estar incorrecto, por favor utilice el comando CLI npx @capgo/cli zip BUNDLE_FOLDER.

Este es un problema conocido de Java:

  • Si tiene problemas con usesCleartextTraffic, es porque el plugin sigue la buena práctica recomendada por sonar cloud, en el 90% de los casos funcionará correctamente, pero con algunos plugins que causa problemas

Para solucionarlo, agregue en android/app/src/main/AndroidManifest.xml en el <application> clave :

tools:replace="android:usesCleartextTraffic"
xmlns:tools="http://schemas.android.com/tools"

Agregar la NSPrivacyAccessedAPICategoryUserDefaults clave del diccionario a tu Manifiesto de privacidad (generalmente ios/App/PrivacyInfo.xcprivacy):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<!-- Add this dict entry to the array if the file already exists. -->
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>
</dict>
</plist>

Recomendamos declarar CA92.1 como la razón para acceder a la UserDefaults API

Cuando se utiliza un servidor local para la prueba de actualización, la aplicación solicitará permiso de red, es un comportamiento normal, no es el caso cuando se utiliza un servidor remoto.

Al realizar actualizaciones de modo manual, algunos eventos no son fáciles de capturar, por ejemplo, el fallo de actualización desencadena justo antes de que su JS code se recargue, por lo que no podrá capturarlo.

Una alternativa es listar los paquetes y verificar estadísticas de errores para saber si la actualización falla.

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 realizar actualizaciones.

Los PRs están bienvenidos para ayudarnos a mejorar esto.

si su CLI tiene problemas haciendo cualquier cosa,

Verifique si appId y appName están presentes en su capacitor.config.ts

Siga la guía del documento oficial: