Strumento Differenza versione APK

Strumento di confronto versioni APK e XAPK online

Confronta due Pacchetti .apk, .xapk o .apks fianco a fianco nel tuo browser. Verifica se i certificati di firma crittografica corrispondono (per evitare errori INSTALL_FAILED_UPDATE_INCOMPATIBLE e controlla le differenze nel bytecode DEX, nelle librerie native e nelle voci interne).

Pacchetto A (versione vecchia/base)

Fare clic o rilasciare il primo file .apk/.xapk

Pacchetto B (versione nuova/aggiornata)

Fare clic o rilasciare il secondo file .apk/.xapk

Perché il confronto delle versioni APK previene gli aggiornamenti non riusciti

Quando installi una versione più recente di un'app Android su un'installazione esistente, PackageManager di Android applica due regole rigide: versionCode del nuovo pacchetto deve essere maggiore o uguale alla build installata e il suo certificato di firma all'interno di META-INF/ (o il blocco di firma APK v2/v3) deve essere identico byte per byte.

  • Corrispondenza del digest del certificato di firma: Calcola l'impronta digitale SHA-256 del blocco firma .RSA / .DSA / .EC in entrambi i pacchetti in modo da sapere immediatamente se un aggiornamento sul posto avrà esito positivo senza disinstallarlo.
  • Differenze ABI e DEX native: Evidenzia se un aggiornamento ha rimosso le librerie armeabi-v7a a 32 bit o ha aggiunto nuovi file classes*.dex.
  • Delta ingresso CRC32: Elenca i file esatti aggiunti o rimossi tra le build.

Come Android valuta gli aggiornamenti dei pacchetti (INSTALL_FAILED_UPDATE_INCOMPATIBLE)

Uno degli errori più frequenti riscontrati dagli utenti durante l'aggiornamento di un'app trasferita localmente è "App non installata poiché il pacchetto è in conflitto con un pacchetto esistente" (noto nei log ADB come INSTALL_FAILED_UPDATE_INCOMPATIBLE). Ciò accade ogni volta che l'app installata proviene da Google Play Store (firmata con la chiave di rilascio privata dello sviluppatore) e l'aggiornamento è stato convertito da un archivio .xapk diviso (che doveva essere firmato nuovamente con una chiave di firma del convertitore dopo aver unito le divisioni).

Tuttavia, se sia la versione precedente che quella nuova sono state convertite utilizzando xapktoapk.com, la nostra pipeline di firma deterministica utilizza lo stesso certificato di firma coerente per tutte le conversioni, il che significa che puoi installare il nuovo APK convertito direttamente sopra il vecchio APK convertito senza disinstallare o perdere i progressi in-app! Utilizza lo strumento di confronto qui sopra per verificare che entrambi i file condividano lo stesso digest del certificato prima dell'installazione.

Progettato e documentato dal signor Shaefale Sviluppatore capo e architetto di pacchetti Android • Verificato su Android 12-15

Tutti i confronti binari e l'hashing SHA-256 vengono eseguiti al 100% localmente nel tuo browser tramite Web Crypto. Contatta il nostro supporto tecnico se hai domande.