Herramienta de diferenciación de versión APK

Herramienta de comparación de versiones APK y XAPK en línea

Compare dos Paquetes .apk, .xapk o .apks uno al lado del otro en su navegador. Verifique si sus certificados de firma criptográfica coinciden (para evitar errores INSTALL_FAILED_UPDATE_INCOMPATIBLE e inspeccione las diferencias en el código de bytes DEX, las bibliotecas nativas y las entradas internas).

Paquete A (versión antigua/base)

Haga clic o suelte el primer archivo .apk/.xapk

Paquete B (Versión nueva/actualizada)

Haga clic o suelte el segundo archivo .apk/.xapk

Por qué comparar versiones de APK evita actualizaciones fallidas

Cuando instala una versión más nueva de una aplicación de Android sobre una instalación existente, PackageManager de Android aplica dos reglas estrictas: el versionCode del nuevo paquete debe ser mayor o igual a la compilación instalada, y su certificado de firma dentro de META-INF/ (o el bloque de firma de APK v2/v3) debe ser byte por byte idéntico.

  • Coincidencia de resumen del certificado de firma: Calcula la huella digital SHA-256 del bloque de firma .RSA / .DSA / .EC en ambos paquetes para que sepa inmediatamente si una actualización local tendrá éxito sin desinstalarla.
  • Diferenciación nativa de ABI y DEX: Destaca si una actualización eliminó las bibliotecas armeabi-v7a de 32 bits o agregó nuevos archivos classes*.dex.
  • Delta de entrada CRC32: Enumera los archivos exactos agregados o eliminados entre compilaciones.

Cómo evalúa Android las actualizaciones de paquetes (INSTALL_FAILED_UPDATE_INCOMPATIBLE)

Uno de los errores más frecuentes que encuentran los usuarios al actualizar una aplicación descargada es "La aplicación no instalada porque el paquete entra en conflicto con un paquete existente" (conocido en los registros de ADB como INSTALL_FAILED_UPDATE_INCOMPATIBLE). Esto sucede siempre que la aplicación instalada proviene de Google Play Store (firmada con la clave de versión privada del desarrollador) y la actualización se convirtió desde un archivo .xapk dividido (que tuvo que volver a firmarse con una clave de firma del convertidor después de fusionar las divisiones).

Sin embargo, si tanto su versión anterior como su nueva versión se convirtieron usando xapktoapk.com, nuestro proceso de firma determinista utiliza el mismo certificado de firma consistente en todas las conversiones, lo que significa que puede instalar el nuevo APK convertido directamente encima del antiguo APK convertido sin desinstalarlo ni perder su progreso en la aplicación. Utilice la herramienta de comparación anterior para confirmar que ambos archivos comparten el mismo resumen del certificado antes de realizar la instalación.

Diseñado y documentado por Mst Shaefale Desarrollador líder y arquitecto de paquetes de Android • Verificado en Android 12–15

Toda la comparación binaria y el hash SHA-256 se ejecutan 100% localmente en su navegador a través de Web Crypto. Póngase en contacto con nuestro servicio de soporte si tiene preguntas.