FAQ
Si tiene preguntas que no han sido respondidas aquí, ¡pregunte! Tanto presentar un problema como preguntar sobre Discord funcionan.
¿Qué es “code push”?
Section titled “¿Qué es “code push”?”Code push, también conocido como “actualizaciones inalámbricas” (OTA), es un servicio en la nube que permite a los desarrolladores de Capacitor implementar actualizaciones en sus aplicaciones en producción. Capgo actualmente funciona en Android, iOS y Electron.
“Code Push” es una referencia al nombre de una función de implementación utilizada por la comunidad React Native de Microsoft y Expo, ninguna de las cuales admite Capacitor.
¿Cuál es la diferencia entre un paquete y una versión?
Section titled “¿Cuál es la diferencia entre un paquete y una versión?”Usamos el término “lanzamiento” para referirnos a la preparación de un binario para las tiendas de aplicaciones. Para poder generar posteriormente un paquete, Capgo necesita saber el binario exacto que se envió a las tiendas de aplicaciones.
Usamos el término “paquete” para referirnos a un parche que se puede aplicar a una versión para actualizarla con un código nuevo. El comando npx @capgo/cli@latest bundle upload se utiliza para generar un paquete a partir de su nuevo código local que luego se envía a sus usuarios.
¿Cuál es la hoja de ruta?
Section titled “¿Cuál es la hoja de ruta?”Nuestros tableros de proyectos también son públicos y se encuentran en: https://github.com/orgs/Cap-go/projects
Nuestro equipo también opera en público, por lo que puedes ver en qué estamos trabajando en cualquier momento. Estaremos encantados de responder cualquier pregunta que tenga sobre nuestra hoja de ruta o prioridades a través de problemas de Github o Discord.
¿Puedo usar Capgo con mi equipo?
Section titled “¿Puedo usar Capgo con mi equipo?”¡Sí! Todos los planes admiten desarrolladores ilimitados. Solo limitamos las métricas de las aplicaciones (MAU, almacenamiento y ancho de banda) a cada organización.
Consulte Equipos para obtener más información.
¿Capgo almacena mi código fuente?
Section titled “¿Capgo almacena mi código fuente?”No. Los servidores Capgo nunca ven su código fuente. Cuando ejecuta npx @capgo/cli@latest bundle upload, Capgo almacena un archivo zip del código minificado/compilado: el mismo código que recibiría un navegador, no su código fuente.
Para mayor seguridad, tienes dos opciones:
- Cifrado de extremo a extremo: cifra tu paquete antes de cargarlo, lo que hace imposible que Capgo lea o modifique el contenido.
- Carga de URL externa: almacene el paquete en su propio servidor y solo proporcione a Capgo el enlace de descarga con la opción
--external <url>
Consulte también nuestra política de privacidad: https://capgo.app/privacy
¿Puedo usar Capgo desde mi sistema CI?
Section titled “¿Puedo usar Capgo desde mi sistema CI?”Sí. Capgo está diseñado para usarse desde sistemas CI. Hemos publicado una guía para Android y Github Actions y iOS, y para GitLab. Otros sistemas de CI deberían ser similares.
No dude en comunicarse con GitHub problemas o en Discord si encuentra algún problema.### ¿Cómo se relaciona esto con Firebase Remote Config o Launch Darkly?
La inserción de código permite agregar código nuevo/reemplazar código en el dispositivo. Firebase Remote Config y Launch Darkly son ambos sistemas de configuración. Le permiten cambiar la configuración de su aplicación sin tener que enviar una nueva versión. No están destinados a reemplazar el código.
¿Qué tamaño de huella de dependencia agrega esto?
Section titled “¿Qué tamaño de huella de dependencia agrega esto?”No lo he medido recientemente, pero espero que la biblioteca de inserción de código agregue menos de un megabyte a las aplicaciones Capacitor. Conocemos formas en que podemos reducir esto cuando se convierta en una prioridad. Si el tamaño es un obstáculo para usted, ¡háganoslo saber!
¿Capgo funciona en el simulador iOS 18.4?
Section titled “¿Capgo funciona en el simulador iOS 18.4?”No. Debido a un problema ascendente que afecta al simulador iOS 18.4, Capgo no se ejecuta de manera confiable allí. Pruebe en un dispositivo real o utilice una versión diferente del simulador iOS.
Ver detalles en el problema de React Native: facebook/react-native#50510
¿La inserción de código funciona con aplicaciones grandes?
Section titled “¿La inserción de código funciona con aplicaciones grandes?”Sí. No hay límite en el tamaño de la aplicación que se puede actualizar mediante inserción de código. Como se indica a continuación, Capgo puede cambiar cualquier código JS en su aplicación independientemente del tamaño.
Nota: un tamaño mayor dificulta que los usuarios descarguen actualizaciones. We recommend keeping your app as small as possible.
What can I use Capgo code push for?
Section titled “What can I use Capgo code push for?”Hemos visto una variedad de usos, que incluyen:
- Correcciones de emergencia para aplicaciones de producción.
- Envío de correcciones de errores a usuarios de versiones anteriores de su aplicación.
- Envío constantemente (por ejemplo, cada hora).
Note that most app stores prohibit shipping code that changes the behavior of the app in a significant way. Consulte a continuación para obtener más información.
¿Qué cuenta como “MAU” para Capgo?
Section titled “¿Qué cuenta como “MAU” para Capgo?”Una MAU es un “usuario activo mensual”. En el contexto de Capgo, esto en realidad se refiere a un Dispositivo Activo Mensual. We count a MAU as any device that has contacted our servers in the last 30 days. No contamos los dispositivos que no se han comunicado con nuestros servidores en los últimos 30 días.
Importante: A partir de la versión del complemento v5.10.0, v6.25.0 y v7.25.0, el ID del dispositivo ahora persiste en las reinstalaciones de la aplicación. Antes de estas versiones, cada reinstalación de la aplicación generaba un nuevo ID de dispositivo y contaba como una nueva MAU.Con las versiones actuales:
- DeviceID persiste durante las reinstalaciones de aplicaciones (almacenado de forma segura en Keychain en iOS y EncryptedSharedPreferences en Android)
- La actualización de la aplicación no crea una nueva ID de dispositivo
- Durante el desarrollo, si está utilizando una versión anterior del complemento (< v5.10.0 / v6.25.0 / v7.25.0), each reinstall still creates a new MAU
Note: TestFlight downloads and channel switches in Android may still generate new device registrations depending on your configuration.
), recomendamos después de la primera configuración, deshabilitar los dispositivos de desarrollo y los emuladores para reducir la cantidad de dispositivos duplicados.
¿Para qué no podemos usar el código push Capgo?
Section titled “¿Para qué no podemos usar el código push Capgo?”Como se indicó anteriormente, Capgo no debe usarse para violar las políticas de la tienda de aplicaciones. Consulte a continuación para obtener más información.
Además, Capgo no admite el cambio de código nativo (por ejemplo, Java/Kotlin en Android u Objective-C/Swift en iOS). La herramienta le avisará durante un intento de actualización si ha cambiado el código nativo.
¿Puedo actualizar los cambios de capacitor.config.ts a través de Capgo?
Section titled “¿Puedo actualizar los cambios de capacitor.config.ts a través de Capgo?”No. Los cambios en capacitor.config.ts no se pueden enviar a través de Capgo actualizaciones en vivo. El archivo de configuración Capacitor se lee en el momento de la compilación nativa y se compila en el binario de la aplicación nativa. Esto significa que cualquier cambio en capacitor.config.ts (como configuraciones de complementos, ID de aplicación, configuración del servidor u opciones de complementos nativos) requiere una nueva versión nativa a través de App Store o Google Play.
Capgo solo puede actualizar recursos web (HTML, CSS, JavaScript) que se cargan en tiempo de ejecución. Si necesita cambiar su configuración Capacitor, debe:
- Actualizar
capacitor.config.tslocalmente - Reconstruya su aplicación nativa (
npx cap syncseguida de una compilación nativa) - Envíe el nuevo binario a las tiendas de aplicaciones.
¿Capgo envía a las tiendas por mí?
Section titled “¿Capgo envía a las tiendas por mí?”Actualmente, Capgo no admite el envío a las tiendas de aplicaciones en su nombre. Tenemos planes de agregar esto en el futuro, pero por ahora deberá continuar usando sus procesos existentes para enviar a las tiendas de aplicaciones.
Puede utilizar nuestra guía de CI Android para automatizar este proceso y nuestra guía de CI iOS.
¿Qué almacena Capgo en el disco y dónde?
Section titled “¿Qué almacena Capgo en el disco y dónde?”El actualizador Capgo (incluido en su aplicación cuando crea su aplicación) almacena en caché el último paquete descargado en el único directorio que permite cargar código. En Android, esto se encuentra en /data/user/0/com.example.app/code_cache/capgo_updater aunque la base de esa ruta la proporciona el sistema Android y puede cambiar dinámicamente en tiempo de ejecución. En los dispositivos iOS, los datos se almacenan en Library/Application Support/capgo.
Las herramientas de línea de comandos Capgo (por ejemplo, npx @capgo/cli@latest bundle upload) se instalan en el disco en cachés npm, sus inicios de sesión se almacenan en su directorio de inicio en ~/.capgo.### ¿Cómo se relaciona esto con Capacitor Hot Reload?
La recarga en caliente de Capacitor es una característica solo en tiempo de desarrollo. La inserción de código es para producción.
La recarga en caliente es una característica de Capacitor que le permite cambiar el código en el dispositivo durante el desarrollo. Requiere crear la aplicación Capacitor con un proxy para conectarse a su máquina local.
La inserción de código es una función que le permite cambiar el código en el dispositivo en producción. Usaremos una variedad de técnicas diferentes para hacer esto posible dependiendo de la plataforma.
¿Qué tipos de cambios admite la inserción de código Capgo?
Section titled “¿Qué tipos de cambios admite la inserción de código Capgo?”Capgo puede cambiar cualquier código JS en su aplicación. Esto incluye el código de la aplicación y el código generado. También puede actualizar las dependencias en package.json siempre que no requieran cambios en el código nativo.
No tenemos planes para admitir el cambio de código nativo (por ejemplo, Java/Kotlin en Android u Objective-C/Swift en iOS), y la herramienta le avisará si detecta que ha cambiado el código nativo, ya que no se incluirá en el paquete.
¿Esto es compatible con Web?
Section titled “¿Esto es compatible con Web?”No es necesario insertar código para la web, ya que la web ya funciona de esta manera. Cuando un usuario abre una aplicación web, descarga la última versión del servidor si es necesario.
Si tiene un caso de uso para la inserción de código con la web, ¡nos encantaría saberlo!
¿Funcionará esto en iOS, Android, Mac, Windows, Linux, etc.?
Section titled “¿Funcionará esto en iOS, Android, Mac, Windows, Linux, etc.?”Sí.
Hasta ahora nos hemos centrado en el soporte de Android, iOS y Electron, y el envío de código está listo para producción en los tres.
¿Qué versiones de sistema operativo admite Capgo?
Section titled “¿Qué versiones de sistema operativo admite Capgo?”Capgo admite las mismas versiones de Android que admite Capacitor.
Capacitor actualmente admite Android API nivel 22+ y iOS 13.0+: https://capacitorjs.com/docs/main/reference/support-policy
¿Qué versiones de Capacitor admite Capgo?
Section titled “¿Qué versiones de Capacitor admite Capgo?”Capgo actualmente solo admite versiones estables recientes de Capacitor. También podríamos admitir versiones anteriores de Capacitor, pero no hemos creado la infraestructura necesaria para mantenerlas a lo largo del tiempo. Tenemos la intención de admitir más versiones de Capacitor en el futuro, incluida cualquier versión para nuestros clientes empresariales. https://github.com/Cap-go/capgo/issues/1100
Capgo rastrea Capacitor estable y generalmente se actualiza a las pocas horas de cualquier lanzamiento estable. Nuestro sistema para realizar estas actualizaciones es automatizado y tarda unos minutos en ejecutarse. Luego realizamos un paso de verificación manual adicional antes de publicar en nuestros servidores.### ¿Cómo se relaciona esto con el proceso o las políticas de revisión de la aplicación/Play Store?
Los desarrolladores están sujetos a sus acuerdos con los proveedores de tiendas cuando deciden utilizar esas tiendas. La inserción de código está diseñada para permitir a los desarrolladores actualizar sus aplicaciones y seguir cumpliendo con las políticas de la tienda en los canales de entrega iOS, Android y Electron. Similar a la variedad de productos comerciales disponibles para hacerlo con React Native (por ejemplo, Microsoft, Expo).
Microsoft también publica una guía sobre cómo su solución cumple con las tiendas de aplicaciones: https://github.com/microsoft/react-native-code-push#store-guideline-compliance
La inserción de código es una técnica ampliamente utilizada en las tiendas de aplicaciones. Todas las aplicaciones grandes que conozco utilizan código push. La principal política a tener en cuenta es no cambiar el comportamiento de la aplicación de manera significativa. Consulte a continuación para obtener más información.
¿Capgo cumple con las pautas Play Store?
Section titled “¿Capgo cumple con las pautas Play Store?”Sí.
El Play Store ofrece dos restricciones relacionadas con las herramientas de actualización.
- Las actualizaciones deben utilizar un intérprete o una máquina virtual (Capgo usa JavaScript en un WebView). https://support.google.com/googleplay/android-developer/answer/9888379?hl=en
An app distributed via Google Play may not modify, replace, or update itself using any method other than Google Play's update mechanism. Likewise, an app may not download executable code (such as dex, JAR, .so files) from a source other than Google Play. *This restriction does not apply to code that runs in a virtual machine or an interpreter* where either provides indirect access to Android APIs (such as JavaScript in a webview or browser).
Apps or third-party code, like SDKs, with interpreted languages (JavaScript, Python, Lua, etc.) loaded at run time (for example, not packaged with the app) must not allow potential violations of Google Play policies.- Los cambios en la aplicación no deben ser engañosos (por ejemplo, cambiar el propósito de la aplicación mediante una actualización). https://support.google.com/googleplay/android-developer/answer/9888077 Sea claro con sus usuarios sobre lo que proporciona con su aplicación y no viole sus expectativas con cambios de comportamiento significativos mediante el uso de Capgo.
Capgo está diseñado para ser compatible con las pautas Play Store. Sin embargo, Capgo es una herramienta y, como ocurre con cualquier herramienta, se puede abusar de ella. Abusar deliberadamente de Capgo para violar las pautas de Play Store es una violación de los Capgo Términos de servicio y puede resultar en la cancelación de su cuenta.
Finalmente, los servicios de inserción de código se utilizan ampliamente en la industria (todas las aplicaciones grandes que conozco los usan) y hay muchos otros servicios de inserción de código disponibles públicamente (por ejemplo, expo.dev y appcenter.ms). Este es un camino muy transitado.
Microsoft también publica una guía sobre cómo su biblioteca nativa “codepush” de reacción cumple con las tiendas de aplicaciones: https://github.com/microsoft/react-native-code-push#store-guideline-compliance
¿Capgo cumple con las pautas App Store?
Section titled “¿Capgo cumple con las pautas App Store?”Sí.
Al igual que el Play Store, el App Store ofrece restricciones técnicas y de políticas.
3.2.2... interpreted code may be downloaded to an Application but only so long assuch code:(a) does not change the primary purpose of the Application by providingfeatures or functionality that are inconsistent with the intended andadvertised purpose of the Application as submitted to the App Store,(b) does not create a store or storefront for other code or applications, and(c) does not bypass signing, sandbox, or other security features of the OS.Capgo usa JavaScript en un WebView para cumplir con la restricción de solo intérprete para actualizaciones en iOS. Siempre que su aplicación no tenga un comportamiento engañoso a través de actualizaciones (por ejemplo, cambiar el propósito de la aplicación mediante una actualización), la actualización a través de Capgo (o cualquier otra solución de inserción de código) es una práctica estándar de la industria y cumple con las pautas App Store.Deliberately abusing Capgo to violate App Store guidelines is in violation of the Capgo Terms of Service and can result in termination of your account.
Microsoft también publica una guía sobre cómo su biblioteca nativa “codepush” de reacción cumple con las tiendas de aplicaciones: https://github.com/microsoft/react-native-code-push#store-guideline-compliance
¿Puedo usar Capgo en mi país?
Section titled “¿Puedo usar Capgo en mi país?”No hemos intentado restringir el acceso a Capgo desde ningún país.
Reconocemos que algunos países tienen restricciones sobre las URL a las que se puede acceder desde dentro del país. Capgo actualmente utiliza Cloudflare Cloud para alojamiento, incluidos R2 Storage y los trabajadores de Cloudflare.
Capgo utiliza las siguientes URL:
- https://api.capgo.app — used by the
npx @capgo/clicommand line tools to interact with the Capgo servers as well as the Capgo updater on users’ devices to check for updates. - https://*.r2.cloudflarestorage.com — utilizado por la herramienta de línea de comando
npx @capgo/clipara cargar y descargar paquetes
Si se puede acceder a todas esas URL desde su país, entonces Capgo debería funcionar.
Si su región requiere bloquear el acceso a cualquiera de esas URL, háganoslo saber y podremos trabajar con usted para encontrar una solución. Los servidores proxy son una opción.
¿Puedo autohospedar Capgo?
Section titled “¿Puedo autohospedar Capgo?”Sí, puedes autohospedar Capgo. La guía aún no está escrita, pero el código es de código abierto y está disponible en https://github.com/cap-go/capgo
¿La inserción de código requiere Internet para funcionar?
Section titled “¿La inserción de código requiere Internet para funcionar?”Sí. One could imagine running a server to distribute the updates separately from the general internet, but some form of network connectivity is required to transport updates to the devices.
How is Capgo affected by lack of network connectivity?
Section titled “How is Capgo affected by lack of network connectivity?”Capgo updater (included in your application when you build your app with Capgo) is designed to be resilient to network connectivity issues.
In the default update behavior, when the application launches it alerts the Capgo updater, which spawns a separate thread to make a network request to Capgo’s servers and ask for an update. Usamos intencionalmente un hilo separado para evitar afectar el bloqueo de cualquier otra cosa que la aplicación pueda estar haciendo. Si la solicitud de red falla o se agota el tiempo de espera, el actualizador simplemente intentará verificar nuevamente la próxima vez que se inicie la aplicación.
Las herramientas de línea de comandos Capgo (por ejemplo, npx @capgo/cli@latest bundle upload) requieren conectividad de red para funcionar. Si está utilizando Capgo para distribuir su aplicación, debe asegurarse de que su sistema CI tenga conectividad de red.
What happens if a user doesn’t update for a long time and misses an update?Our implementation always sends an update specifically tailored for the device that is requesting it updating the requestor always to the latest version available. Thus if a user doesn’t update for a while they will “miss” intermediate updates.
Section titled “What happens if a user doesn’t update for a long time and misses an update?Our implementation always sends an update specifically tailored for the device that is requesting it updating the requestor always to the latest version available. Thus if a user doesn’t update for a while they will “miss” intermediate updates.”The update server could be changed to support responding with either the next incremental version or the latest version depending on your application’s needs. Háganos saber si los comportamientos de actualización alternativos son importantes para usted.
How does Capgo relate to Capacitor?
Section titled “How does Capgo relate to Capacitor?”Capgo es un complemento para Capacitor que agrega inserción de código. Capgo no reemplaza a Capacitor. Puede seguir utilizando las herramientas Capacitor que ya conoce y ama.
We track the latest stable release of Capacitor and update our code push plugin to work with it.
¿Cuándo ocurren las actualizaciones?
Section titled “¿Cuándo ocurren las actualizaciones?”De forma predeterminada, el actualizador Capgo busca actualizaciones al iniciar la aplicación. It runs on a background thread and does not block the UI thread. Todas las actualizaciones se instalarán mientras el usuario esté usando la aplicación y se aplicarán la próxima vez que se reinicie la aplicación.
It is also possible to run the Capgo updater manually using the @capgo/capacitor-updater package, through which it is possible to trigger updates at any time, including via a push notification.
The Capgo updater is designed such that when the network is not available, or the server is down or otherwise unreachable, the app will continue to run as normal. Si alguna vez decide eliminar una actualización de nuestros servidores, todos sus clientes seguirán funcionando normalmente.
Hemos agregado la capacidad de deshacer parches. Lo más sencillo es simplemente adjuntar un paquete anterior a tu canal para deshacerlo.
¿Necesito mantener mi app_id en secreto?
Section titled “¿Necesito mantener mi app_id en secreto?”No. El app_id está incluido en su aplicación y es seguro que sea público. Puedes registrarlo en el control de versiones (incluso públicamente) y no preocuparte de que alguien más acceda a él.
Someone who has your app_id can fetch the latest version of your app from Capgo servers, but they cannot push updates to your app or access any other aspect of your Capgo account.
What information is sent to Capgo servers?
Section titled “What information is sent to Capgo servers?”Aunque Capgo se conecta a la red, no envía ninguna información de identificación personal. Incluir Capgo no debería afectar sus declaraciones para Play Store o App Store.
Las solicitudes enviadas desde la aplicación a los servidores Capgo incluyen:- aplicación_id (especificado capacitor.config.json)
- canal (opcional en
capacitor.config.json) - lanzamiento_versión (nombre de versión de AndroidManifest.xml o CFBundleShortVersionString de Info.plist o
capacitor.config.jsonsi está configurado enCapacitorUpdater.version) - versión_número (generado como parte de
npx @capgo/cli@latest bundle upload) - os_version (por ejemplo, ‘11.2.1’)
- plataforma (por ejemplo, ‘android’, necesaria para enviar el parche correcto) Eso es todo. El código para esto está en
updater/library/src/network.rs - dispositivo_id (generado en el dispositivo en la primera ejecución, utilizado para eliminar duplicados de instalaciones por dispositivo y permitirnos cobrar en función de los usuarios instalados (por ejemplo, usuarios activos mensuales), en lugar del total de parches o de instalaciones de parches)
- custom_id (opcional, configurado en tiempo de ejecución por el desarrollador, usado para vincular un dispositivo a un usuario en su sistema)
¿Qué plataformas admite Capgo?
Section titled “¿Qué plataformas admite Capgo?”Actualmente, Capgo admite Android, iOS y Electron. Todos están listos para producción.
El uso de Capgo para iOS, Android o Electron pueden ser decisiones independientes. Puede configurar su estrategia de canal para Android y un ipa integrado para App Store, o canales Electron, según sea necesario.
Capgo se puede hacer (con relativa facilidad) para que admita objetivos integrados o de escritorio. Si son importantes para usted, háganoslo saber.
¿Cómo interactúa Capgo con Play Testing Tracks o Apple TestFlight?
Section titled “¿Cómo interactúa Capgo con Play Testing Tracks o Apple TestFlight?”Cada una de las tiendas de aplicaciones tiene mecanismos separados para distribuir aplicaciones a grupos limitados de usuarios (por ejemplo, “pruebas internas”, “beta cerrada”, etc.). Todos estos son mecanismos para segmentar a sus usuarios en grupos y distribuir versiones específicas de sus aplicaciones a cada uno.
Desafortunadamente, no todos estos mecanismos permiten a terceros detectar cuándo se instalan aplicaciones en una pista de prueba específica o mediante TestFlight. Por lo tanto, no tenemos una visibilidad confiable de la composición de estos grupos y no podemos controlar de manera confiable el acceso a los parches Capgo basados en estos grupos. https://stackoverflow.com/questions/53291007/can-an-android-application-identify-the-test-track-within-google-play https://stackoverflow.com/questions/26081543/how-to-tell-at-runtime-whether-an-ios-app-is-running-through-a-testflight-beta-i
Si desea segmentar la disponibilidad del paquete Capgo, existen 4 opciones potenciales:1. Utilice un canal separado para cada grupo. Este es el enfoque más sencillo, pero requiere que administres múltiples canales. Es posible que ya tengas canales de desarrollo y canales de producción con diferente disponibilidad. De este modo, puede actualizar sus canales de desarrollo, verificarlos y luego actualizar por separado sus canales de producción. Recomendamos utilizar ramas/etiquetas en su control de versiones para ayudar a realizar un seguimiento de las fuentes asociadas con cada versión.
2. Realice un seguimiento de su propio conjunto de usuarios registrados, desactive las actualizaciones automáticas y active actualizaciones solo para ciertos usuarios a través del paquete @capgo/capacitor-updater. Esto funciona hoy, pero requiere que usted administre su propia lista de suscripción.
3. Capgo permite crear su propio mecanismo de suscripción por dispositivo (similar a Test Tracks o TestFlight, solo que es independiente de la plataforma). Esto le permite a su equipo de control de calidad optar por el paquete antes de promocionarlo al público en general.
4. Capgo tiene implementaciones basadas en porcentajes. Esto no le permite elegir a qué dispositivos enviar, pero puede ayudarle a implementar de forma incremental y retroceder ante cualquier problema.
Facturación
Section titled “Facturación”¿Cómo actualizo o degrade mi plan?
Section titled “¿Cómo actualizo o degrade mi plan?”Puede actualizar o degradar su plan en cualquier momento en su panel de control: https://console.capgo.app/settings/organization/plans
¿Cuándo se restablece mi período de facturación?
Section titled “¿Cuándo se restablece mi período de facturación?”Los períodos de facturación se restablecen automáticamente cada mes en el mes en que se suscribió por primera vez a Capgo. Por ejemplo, si se suscribió el día 15 del mes, su período de facturación se restablecerá el día 15 de cada mes.
¿Cómo cancelo mi suscripción?
Section titled “¿Cómo cancelo mi suscripción?”Puedes cancelar tu suscripción en cualquier momento en tu panel de control: https://console.capgo.app/settings/organization/plans
¿Puedo pagar con un año de anticipación?
Section titled “¿Puedo pagar con un año de anticipación?”Sí, puedes hacerlo en cualquier momento en tu panel de control: https://console.capgo.app/settings/organization/plans
Estadísticas y análisis
Section titled “Estadísticas y análisis”Las estadísticas en su panel se actualizan cada medianoche UTC. Las estadísticas se calculan en función de la cantidad de MAU que se han instalado en sus dispositivos.
Cómo se genera la ID del dispositivo
Section titled “Cómo se genera la ID del dispositivo”La ID del dispositivo se genera en el dispositivo en la primera ejecución y se utiliza para eliminar duplicados de instalaciones por dispositivo y permitirnos cobrar en función de los usuarios instalados (por ejemplo, usuarios activos mensuales), en lugar del total de parches o instalaciones de parches totales.
MAU es una mejor solución que el número de instalaciones para fijar el precio Capgo, ya que es más preciso y refleja el costo real de Capgo por dispositivo.Persistencia de ID de dispositivo (actualizado en v6.25.0 y v7.25.0):
- Comportamiento actual: el ID del dispositivo ahora persiste durante las reinstalaciones de la aplicación. Se almacena de forma segura en el llavero del dispositivo (iOS) o EncryptedSharedPreferences (Android), lo que nos permite rastrear el mismo dispositivo incluso después de desinstalarlo/reinstalarlo.
- Comportamiento anterior (antes de v6.25.0/v7.25.0): por razones de privacidad relacionadas con las políticas de tienda Apple y Google, el ID del dispositivo se restablecía en cada reinstalación de la aplicación, lo que hacía imposible rastrear el mismo dispositivo en todas las reinstalaciones.
Las reglas de privacidad son aplicadas por Apple y Google, y la implementación de Capgo cumple con sus mejores prácticas para la identificación de dispositivos.
La ID del dispositivo no aparecerá en su lista de dispositivos hasta que instalen el primer parche.
¿Por qué mi número de dispositivo es diferente a mi MAU?
Section titled “¿Por qué mi número de dispositivo es diferente a mi MAU?”Actualmente, la lista de dispositivos no se actualiza con tanta frecuencia como la MAU.
La lista de dispositivos se actualiza solo cuando un dispositivo instala una actualización.
Mientras que la MAU se actualiza en cada inicio de la aplicación. Esta es una limitación actual de la plataforma. Nuestra plataforma de análisis no admite actualizaciones sin procesar, por lo que utilizamos una base de datos convencional para la lista de dispositivos.
Para limitar la cantidad de consultas a la base de datos, actualizamos la fila solo cuando se actualiza la aplicación.
Esta limitación se eliminará en el futuro.
¿Cómo tener una actualización diferente por plataforma?
Section titled “¿Cómo tener una actualización diferente por plataforma?”Puedes crear un canal para cada plataforma. y deshabilite las actualizaciones específicas de la plataforma en cada canal.
En el canal ios, deshabilite las actualizaciones de Android y en el canal de Android, deshabilite las actualizaciones de ios.
Luego cargue un paquete en cada canal para tener una actualización diferente para cada plataforma.
Si necesita tener la misma actualización para ambas plataformas, puede vincular un paquete a varios canales. No es necesario duplicar el paquete.