Podepisovač APK

Podepisovač APK Online — Jak zdarma podepsat soubory APK

Kompletní průvodce Podepisovač APK – zjistěte, jak podepisovat soubory APK pomocí apksigneru, jarsigneru nebo ladění úložiště klíčů. Zdarma krok za krokem Návod k podepisování APK pro vývojáře a testery. Podepište APK bez Android Studio.

Proč musí být soubory APK podepsány?

Každá aplikace pro Android musí být před instalací digitálně podepsána. Podpis slouží k několika účelům:

  • Ověřuje identitu vývojáře aplikace
  • Zajišťuje, že soubor APK nebyl zmanipulován
  • Umožňuje systému Android porovnávat aktualizace aplikací s originálem
  • Vyžaduje se pro instalaci na všechna zařízení Android

Je vyžadován nástroj pro stolní počítač

Podepisování APK vyžaduje nástroje příkazového řádku (JDK / Android SDK). To nelze provést ve webovém prohlížeči. Při podepisování souborů APK v počítači postupujte podle níže uvedeného průvodce.

Metoda 1: Podepište se pomocí apksigneru (doporučeno)

apksigner je oficiální nástroj pro podepisování souborů APK společnosti Google, který je součástí nástrojů Android SDK Build Tools.

Krok 1: Vygenerujte úložiště klíčů

keytool -genkey -v -keystore my-release-key.jks \
  -keyalg RSA -keysize 2048 -validity 10000 \
  -alias my-key-alias

Krok 2: Podepište soubor APK

apksigner sign --ks my-release-key.jks \
  --ks-key-alias my-key-alias \
  --out signed-app.apk unsigned-app.apk

Krok 3: Ověřte podpis

apksigner verify --verbose signed-app.apk

Metoda 2: Podepište se pomocí jarsigneru (starší)

# Sign
jarsigner -verbose -sigalg SHA256withRSA \
  -digestalg SHA-256 \
  -keystore my-release-key.jks \
  app-unsigned.apk my-key-alias

# Verify
jarsigner -verify -verbose app-signed.apk

Krok 4: Zipalign (Důležité!)

Po podepsání optimalizujte soubor APK pomocí zipalign:

zipalign -v 4 signed-app.apk aligned-app.apk

Podepisování ladění (pro testování)

Pro účely testování můžete použít výchozí úložiště klíčů pro ladění systému Android:

# Location of debug keystore:
# Linux/Mac: ~/.android/debug.keystore
# Windows: C:\Users\{USERNAME}\.android\debug.keystore

# Sign with debug key
apksigner sign --ks ~/.android/debug.keystore \
  --ks-key-alias androiddebugkey \
  --ks-pass pass:android \
  app.apk

Porovnání nástrojů pro podepisování

Metrikaapksignerjarsigner
Podpis V1
Podpis V2
Podpis V3
DoporučenoDědictví

Podepisovač APK — Často kladené otázky

Běžné dotazy týkající se podepisování souborů APK, úložišť klíčů a podepisování kódu Android

K podepsat soubor APK potřebujete apksigner (doporučeno) nebo jarsigner: (1) Vygenerujte úložiště klíčů pomocí keytool -genkey, (2) Podepište soubor APK pomocí apksigner sign --ks my-key.jks --out signed.apk unsigned.apk, (3) Ověřte podpis pomocí apksigner verify signed.apk. Pro účely testování můžete také použít úložiště klíčů pro ladění systému Android. Toto je standardní cesta k podepsat APK bez Android Studia.

I když nemůžete podepsat APK online bezpečně (protože podepisování APK vyžaduje vaše soukromé úložiště klíčů, které by nikdy nemělo být nahráno na žádný server), můžete použít náš bezplatný Průvodce podpisem APK k podepisování souborů APK na vašem místním počítači. Náš podrobný návod vás provede celým procesem pomocí oficiálních nástrojů Google apksigner a jarsigner. Po podpisu použijte náš Ověřovač podpisu APK k ověření podpisu online zdarma.

V1 (podpis JAR): Původní schéma podepisování Androidu. Ověřuje každý záznam ZIP jednotlivě. Pomalejší, ale široce kompatibilní se všemi verzemi Androidu. V2 (podpisové schéma APK): Představeno v systému Android 7.0. Ověřuje celý soubor APK jako celek a zajišťuje rychlejší instalaci. V3 (Schéma podpisu APK v3): Android 9.0+, podporuje rotaci kláves. V4: Android 11.0+, umožňuje streamování instalací. Použijte apksigner k podpoře všech schémat; jarsigner podporuje pouze V1.

Chcete-li podepsat APK bez Android Studia: (1) Nainstalujte Java JDK 8 nebo vyšší, (2) Stáhněte si nástroje Android SDK Build Tools, které obsahují apksigner, nebo si stáhněte samostatný přibalený nástroj, (3) Vygenerujte úložiště klíčů: keytool -genkey -v -keystore my-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias, (4) Podepište: apksigner sign --ks my-key.jks --out signed.apk app.apk. Tato metoda funguje v systémech Windows, Mac a Linux bez nutnosti úplné instalace Android Studio.

zipalign je nástroj Android SDK, který zarovnává nekomprimovaná data v rámci APK na 4bajtové hranice. Tato optimalizace snižuje spotřebu paměti RAM, když aplikace běží na zařízení. Důležité: Pokud používáte apksigner, spusťte zipalign PŘED podpisem. Pokud používáte jarsigner (starší), spusťte zipalign PO podepsání. Příkaz: zipalign -v 4 input.apk output.apk. Google Play vyžaduje, aby byly soubory APK před odesláním zarovnány do formátu zip.

Proč na pořadí zarovnání (zipalign Before apksigner) záleží na Androidu 11–15

Jednou z nejčastějších chyb, kterých se vývojáři a moddeři dopouštějí při podepisování upraveného nebo sloučeného souboru APK, je spuštění zipalign po při podepisování balíčku – nebo použití staršího nástroje Java jarsigner místo sady Android SDK apksigner od Googlu. Protože schéma podpisu APK v2 a v3 vypočítává kryptografický hash přes celé binární rozložení archivu ZIP, úprava bajtových offsetů pomocí zipalign po podepsání okamžitě znehodnotí blok podpisu v2/v3.

Počínaje Androidem 11 (úroveň API 30) a přísně vynuceným na Androidu 14 a 15 vyžaduje PackageManager dvě nesmlouvavé podmínky pro jakýkoli soubor APK zacílený na moderní úrovně SDK:

  • Nekomprimovaný 4bajtový zarovnaný resources.arsc: Zkompilovaná tabulka zdrojů (resources.arsc) musí být uložena nekomprimovaná (STORED) a zarovnána na 4bajtové hranici, aby ji Android mohl mapovat do paměti (mmap) přímo bez kopírování do paměti RAM. Vždy provádějte podepisování zipalign -p -f -v 4 input.apk aligned.apk před.
  • Povinný blok podpisu v2+: Podepsání APK cíleného na API 30+ pomocí jarsigner (které zapisuje pouze podpis v1 META-INF/) způsobí, že Android 11–15 odmítne instalaci pomocí INSTALL_PARSE_FAILED_NO_CERTIFICATES. Pomocí výše uvedeného generátoru interaktivních příkazů vytvořte přesný příkaz apksigner --v2-signing-enabled=true pro své úložiště klíčů nebo ověřte podepsaný výstup v našem Ověřovač podpisu APK.
Navrhl a zdokumentoval Mst Shaefale Vedoucí vývojář a architekt balíčku Android • Ověřeno na Androidu 12–15

Každý nástroj v sadě nástrojů XAPK to APK běží 100% lokálně ve vašem prohlížeči prostřednictvím JavaScriptu a WebAssembly. Našli jste okrajové pouzdro s konkrétním balením? Nahlaste to našemu technickému týmu.