Πακέτο Α (Παλιά / Βασική Έκδοση)
Κάντε κλικ ή αποθέστε πρώτα το αρχείο .apk / .xapk
Πακέτο Β (Νέα / Ενημέρωση Έκδοση)
Κάντε κλικ ή αποθέστε το δεύτερο αρχείο .apk / .xapk
Γιατί η σύγκριση εκδόσεων APK αποτρέπει τις αποτυχημένες ενημερώσεις
Όταν εγκαθιστάτε μια νεότερη έκδοση μιας εφαρμογής Android σε μια υπάρχουσα εγκατάσταση, το PackageManager του Android επιβάλλει δύο αυστηρούς κανόνες: το versionCode του νέου πακέτου πρέπει να είναι μεγαλύτερο ή ίσο με την εγκατεστημένη έκδοση και το πιστοποιητικό υπογραφής του μέσα στο META-INF/ (ή το APK Signing Block v2/v3) πρέπει να είναι byte-byte.
- Αντιστοίχιση σύνοψης υπογραφής πιστοποιητικού: Υπολογίζει το δακτυλικό αποτύπωμα SHA-256 του μπλοκ υπογραφής .RSA / .DSA / .EC και στα δύο πακέτα, ώστε να γνωρίζετε αμέσως εάν μια επιτόπια ενημέρωση θα πετύχει χωρίς απεγκατάσταση.
- Native ABI & DEX Diffing: Επισημαίνει εάν μια ενημέρωση αφαίρεσε τις βιβλιοθήκες armeabi-v7a 32-bit ή πρόσθεσε νέα αρχεία classes*.dex.
- Δέλτα εισόδου CRC32: Παραθέτει τα ακριβή αρχεία που προστέθηκαν ή αφαιρέθηκαν μεταξύ των εκδόσεων.
Πώς το Android αξιολογεί τις ενημερώσεις πακέτων (INSTALL_FAILED_UPDATE_INCOMPATIBLE)
Ένα από τα πιο συχνά σφάλματα που αντιμετωπίζουν οι χρήστες κατά την ενημέρωση μιας πλευρικής εφαρμογής είναι το "Η εφαρμογή δεν εγκαταστάθηκε καθώς το πακέτο έρχεται σε διένεξη με ένα υπάρχον πακέτο" (γνωστό στα αρχεία καταγραφής ADB ως INSTALL_FAILED_UPDATE_INCOMPATIBLE). Αυτό συμβαίνει κάθε φορά που η εγκατεστημένη εφαρμογή προερχόταν από το Google Play Store (υπογεγραμμένη με το ιδιωτικό κλειδί έκδοσης του προγραμματιστή) και η ενημέρωση μετατράπηκε από ένα διαχωρισμένο αρχείο .xapk (το οποίο έπρεπε να υπογραφεί εκ νέου με ένα κλειδί υπογραφής μετατροπέα μετά τη συγχώνευση διαχωρισμών).
Ωστόσο, εάν τόσο η παλιά όσο και η νέα έκδοση μετατράπηκαν χρησιμοποιώντας το xapktoapk.com, η ντετερμινιστική γραμμή υπογραφής χρησιμοποιεί το ίδιο συνεπές πιστοποιητικό υπογραφής σε όλες τις μετατροπές—που σημαίνει ότι μπορείτε να εγκαταστήσετε το νέο APK που έχει μετατραπεί απευθείας πάνω από το παλιό APK που έχει μετατραπεί χωρίς να απεγκαταστήσετε ή να χάσετε την πρόοδό σας στην εφαρμογή! Χρησιμοποιήστε το παραπάνω εργαλείο σύγκρισης για να επιβεβαιώσετε ότι και τα δύο αρχεία μοιράζονται την ίδια σύνοψη πιστοποιητικού πριν την εγκατάσταση.