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.