APK Sürüm Farkı Aracı

APK ve XAPK Sürümü Çevrimiçi Karşılaştırma Aracı

Tarayıcınızda iki .apk, .xapk veya .apks paketleri'yi yan yana karşılaştırın. Kriptografik imzalama sertifikalarının eşleşip eşleşmediğini doğrulayın (INSTALL_FAILED_UPDATE_INCOMPATIBLE hatalarını önlemek için) ve DEX bayt kodu, yerel kitaplıklar ve dahili girişlerdeki farklılıkları inceleyin.

Paket A (Eski / Temel Versiyon)

İlk .apk / .xapk dosyasını tıklayın veya bırakın

Paket B (Yeni / Güncelleme Sürümü)

İkinci .apk / .xapk dosyasını tıklayın veya bırakın

APK Sürümlerini Karşılaştırmak Neden Başarısız Güncellemeleri Önler?

Mevcut bir kurulumun üzerine bir Android uygulamasının daha yeni bir sürümünü yüklediğinizde, Android'in PackageManager'si iki katı kural uygular: yeni paketin versionCode'si yüklü yapıdan büyük veya ona eşit olmalıdır ve META-INF/ (veya APK İmzalama Bloğu v2/v3) içindeki imzalama sertifikası bayt bayt aynı olmalıdır.

  • İmza Sertifikası Özet Eşleşmesi: Her iki paketteki .RSA / .DSA / .EC imza bloğunun SHA-256 parmak izini hesaplar, böylece yerinde bir güncellemenin kaldırmadan başarılı olup olmayacağını anında bilirsiniz.
  • Yerel ABI ve DEX Farkı: Bir güncellemenin 32 bit armeabi-v7a kitaplıklarını mı çıkardığını yoksa yeni classes*.dex dosyaları mı eklendiğini vurgular.
  • CRC32 Giriş Deltası: Derlemeler arasında eklenen veya kaldırılan dosyaları tam olarak listeler.

Android Paket Güncellemelerini Nasıl Değerlendiriyor (INSTALL_FAILED_UPDATE_INCOMPATIBLE)

Kullanıcıların yandan yüklenen bir uygulamayı güncellerken en sık karşılaştığı hatalardan biri "Paket mevcut bir paketle çakıştığı için uygulama yüklenmedi"'dir (ADB günlüklerinde INSTALL_FAILED_UPDATE_INCOMPATIBLE olarak bilinir). Bu durum, yüklenen uygulama Google Play Store'dan geldiğinde (geliştiricinin özel sürüm anahtarıyla imzalanmış) ve güncelleme bölünmüş bir .xapk arşivinden dönüştürüldüğünde (bölünmeleri birleştirdikten sonra bir dönüştürücü imzalama anahtarıyla yeniden imzalanması gerekiyordu) meydana gelir.

Bununla birlikte, hem eski sürümünüz hem de yeni sürümünüz xapktoapk.com kullanılarak dönüştürüldüyse, deterministik imzalama hattımız dönüşümler arasında aynı tutarlı imzalama sertifikasını kullanır; bu, uygulama içi ilerlemenizi kaldırmadan veya kaybetmeden, yeni dönüştürülen APK'yı doğrudan dönüştürülen eski APK'nın üzerine yükleyebileceğiniz anlamına gelir! Yüklemeden önce her iki dosyanın da aynı sertifika özetini paylaştığını doğrulamak için yukarıdaki karşılaştırma aracını kullanın.

Mst Shaefale Tarafından Tasarlandı ve Belgelendi Baş Geliştirici ve Android Paket Mimarı • Android 12–15'te Doğrulandı

Tüm ikili karşılaştırma ve SHA-256 karması, Web Crypto aracılığıyla tarayıcınızda %100 yerel olarak yürütülür. Sorularınız varsa destek masamızla iletişime geçin.