Extrahování souborů APK z nainstalovaných aplikací pro Android
Právní a bezpečnostní upozornění: Tento článek je určen pouze pro vzdělávací účely. Extrahování APK ze zařízení je určeno pro osobní zálohování aplikací jste již legálně nainstalovali na zařízení, které vlastníte. XAPK to APK nehostuje, nedistribuuje, neodkazuje na ani neusnadňuje přístup k aplikacím chráněným autorským právem, placeným nebo pirátským aplikacím. Redistribuce extrahovaných souborů APK placených aplikací nebo aplikací chráněných autorskými právy není povolena. Úplné podmínky najdete v našem Zřeknutí se odpovědnosti.
V telefonu máte úžasnou aplikaci, kterou jste strávili hodiny nastavováním, jen abyste zjistili, že byla odstraněna z Obchodu Play. Nebo možná přecházíte na nové zařízení a chcete offline kopii svých oblíbených nástrojů pro každý případ. Řešením je Extrahování souborů APK z aktuálně nainstalovaných aplikací.
Níže si projdeme vytažením souboru APK z telefonu bez rootu, kde se to hodí pro zálohování a jak následně zkontrolovat extrahovaný soubor pomocí našeho online analytické nástroje.
Klíčové věci
- Soubor APK téměř jakékoli aplikace můžete extrahovat přímo z interního úložiště vašeho zařízení.
- Moderní aplikace často používají Rozdělit soubory APK, které vyžadují specializovaný extraktor.
- Root (Superuser) přístup je obecně není vyžadováno pro zálohování standardních aplikací.
- Po extrahování můžete soubor přenést na SD kartu, PC nebo cloudové úložiště.
Proč extrahovat soubory APK?
Než se pustíte do „jak“, zde je důvod, proč byste měli udržovat záložní knihovnu APK:
- Zachovat ukončené aplikace: Pokud vývojář odstraní svou aplikaci z obchodu, budete mít stále instalovatelnou kopii.
- Podpora staršího hardwaru: Udržujte verze, které fungují na vašem starším tabletu, když se oficiální aplikace aktualizuje, aby vyžadovala novější verze Androidu.
- Vrácení verze: Pokud aktualizace obsahuje chyby, můžete přeinstalovat extrahovanou zálohu a vrátit se do provozu.
- Sdílení aplikací: Odešlete konkrétní verzi aplikace příteli přes Bluetooth nebo kabel bez použití mobilních dat.
Metoda 1: Použití aplikace APK Extractor (bez kořene)
Nejjednodušší způsob je použít speciální nástroj. V Obchodě Play jsou k dispozici desítky aplikací „APK Extractor“. Tyto nástroje fungují tak, že naleznou instalační cestu aplikace v /data/app/ (která je čitelná, ale normálně skrytá) a zkopírují base.apk do vaší veřejné složky pro stahování.
kroky:
- Nainstalujte si renomovaný APK Extractor.
- Otevřete aplikaci a na požádání udělte „Oprávnění k úložišti“.
- Procházejte seznam všech nainstalovaných aplikací.
- Klepněte na aplikaci, kterou chcete uložit.
- Nástroj okamžitě zkopíruje soubor APK do vašeho interního úložiště.
Zpracování rozdělených souborů APK
Pokud extrahujete komplexní aplikaci, jako je Facebook nebo WhatsApp, můžete místo jednoho najít několik souborů .apk. Jedná se o Rozdělit soubory APK. Abyste je mohli používat, budete potřebovat náš Nástroj pro sloučení APKS/APKM, který je spojí do jednoho souboru.
Metoda 2: Ruční extrakce přes ADB (pokročilé)
Pokud nechcete do telefonu instalovat další aplikace, můžete použít počítač se Android Debug Bridge (ADB):
- Připojte telefon k počítači přes USB a povolte ladění USB.
- Otevřete terminál a zadejte: adb shell pm path com.example.app
- Tím se ukáže cesta. Příklad: package:/data/app/com.example.app/base.apk
- Typ: adb pull /data/app/com.example.app/base.apk ./backup.apk
- Soubor je nyní na vašem PC!
Co vlastně získáte, když extrahujete
„Nainstalovaná“ aplikace pro Android již není v zařízení uložena jako jeden soubor APK, zejména pokud pochází z Obchodu Play jako balíček Android App Bundle. Při extrahování můžete získat jeden nebo několik souborů a znalost rozdílu vám pomůže rozhodnout, co si ponechat:
- Jediný základní soubor APK. Starší nebo menší aplikace, které byly nahrány do Play jako prostý soubor APK, se stále instalují jako jeden soubor. Extrakce vrátí jeden .apk, který je samostatný.
- Základní APK + několik konfiguračních rozdělení. Aplikace publikované jako AAB se instalují jako několik souborů APK vedle sebe: base.apk plus split_config.<abi>.apk (nativní kód pro váš CPU), split_config.<density>.apk (zdroje pro vaši obrazovku) a split_config.<language>.apk (řetězce pro vaše národní prostředí). Extrakce je všechny vrátí. Chcete-li znovu nainstalovat stejnou aplikaci na stejné zařízení, potřebujete je všechny.
- Někdy data o aktivech. Moderní hry využívající službu Play Asset Delivery ukládají velké herní prostředky do soukromé mezipaměti aplikace mimo samotné soubory APK. Ty obvykle nelze exportovat běžným extraktorem; balíčky aktiv jsou navrženy tak, aby je bylo možné znovu načíst při prvním spuštění.
Pokud je vaším cílem přenosná záloha, která se nainstaluje na jiné zařízení, obvykle chcete buď (a) sloučený „univerzální soubor APK“ vyrobený s naším Sloučení APKS do APK, nebo (b) všechna rozdělení archivována dohromady, aby je instalátor split-APK, jako je SAI, mohl obnovit jako jednotku.
Jak extrakce funguje (bez kořenů, ze zákulisí)
Většina aplikací "APK extractor" ve skutečnosti nepotřebuje root, protože Android zpřístupňuje nainstalované soubory balíčků prostřednictvím cesty pro čtení na úrovni systému. Standardní tok je:
- Aplikace extraktoru volá PackageManager.getPackageInfo(package, ...), aby získala seznam nainstalovaných aplikací.
- Pro vybranou aplikaci čte ApplicationInfo.sourceDir (cesta základního souboru APK, obvykle /data/app/<package>-<hash>/base.apk a splitSourceDirs (cesta libovolných konfiguračních rozdělení)).
- Uživatelem nainstalovaný extraktor nemůže číst tyto cesty přímo, ale mechanismus FileProvider v Androidu umožňuje systémovým komponentám udělit dočasný přístup pro čtení ke konkrétním URI. OS dělá umožňuje libovolné aplikaci otevřít soubory vlastní APK a soubory APK jiných aplikací podle URI; je to záměrné, protože instalační cesta měla být vždy srozumitelná pro úkoly, jako je odinstalace a aktualizace.
- Extraktor zkopíruje bajty do zapisovatelného uživatelského adresáře (Stažené soubory, složka mezipaměti v aplikaci nebo externí úložiště) a prezentuje je jako soubor ke sdílení nebo instalaci.
Metody pouze root (su; cp /data/app/..). obcházejí rozhraní API a přímo čtou nezpracované cesty. Nejsou rychlejší a nejsou nutné pro nesystémové aplikace.
Extrahování přes ADB (doporučeno pro zálohy)
Nejčistší pracovní postup mimo aplikace je ADB, který už má většina vývojářů nastaveno. Celou práci provedou dva příkazy:
# 1. Find the on-device path(s) for the package
adb shell pm path com.example.app
# Output (single APK):
# package:/data/app/~~hash==/com.example.app-1/base.apk
#
# Output (split APKs):
# package:/data/app/~~hash==/com.example.app-1/base.apk
# package:/data/app/~~hash==/com.example.app-1/split_config.arm64_v8a.apk
# package:/data/app/~~hash==/com.example.app-1/split_config.xxhdpi.apk
# package:/data/app/~~hash==/com.example.app-1/split_config.en.apk
# 2. Pull each path
adb pull /data/app/~~hash==/com.example.app-1/base.apk ./
U aplikací rozdělených APK opakujte adb pull pro každou cestu. Chcete-li získat jeden instalovatelný soubor, vložte je všechny do našeho Sloučení APKS do APK.
Co nelze extrahovat
Extrakce vrátí instalační soubory aplikace. Vrátí ne:
- Data aplikace: preference, databáze, ukládání souborů. Ti, kteří žijí pod /data/data/<package>/ a jsou chráněni před extrakcí non-root pomocí karantény uživatelských dat.
- Balíčky podkladů Play Asset Delivery: staženo při prvním spuštění, uloženo do soukromé mezipaměti a očekává se, že bude znovu načteno, pokud chybí.
- Pokrok uložený v cloudu: Pokud aplikace používá Hry Google Play, Firebase nebo podobné, část uložená v cloudu se nachází na serverech vydavatele, nikoli ve vašem zařízení.
Extrakce je proto dobrá pro případy použití typu „chci mít kopii instalátoru“, ale nenahrazuje správné zálohy celého zařízení (které vyžadují nástroje root nebo dodavatele).
Analyzujte extrahované soubory APK
Po zálohování aplikací použijte naši online sadu ke kontrole jejich metadat, ikon a oprávnění.
Spusťte analýzu APKČasto kladené otázky (FAQ)
Obsahuje extrahování aplikace moje přihlašovací údaje?
Ne. Extrakce pouze kopíruje kód aplikace a zdroje. Z bezpečnostních důvodů nezahrnuje údaje o vašem osobním účtu, hesla ani nastavení.
Mohu extrahovat systémové aplikace, jako je YouTube?
Ano. Některé systémové aplikace však mohou být silně závislé na konkrétních verzích operačního systému a nemusí se správně nainstalovat na jiná zařízení.
Kam jdou extrahované soubory APK?
Většina extrakčních aplikací ukládá soubory do složky s názvem Extrahované soubory APK nebo Stáhnout v interním úložišti telefonu.
Zálohování nainstalovaných aplikací bez ztráty rozdělených konfigurací
Vytvoření vlastního místního úložiště aplikací je nejjistější způsob, jak nikdy neztratit přístup k nástrojům, které máte rádi. Aplikace a terminál ADB vás tam dostanou a extrahování souborů APK je bezpečný a praktický způsob, jak spravovat vaše zařízení Android. Po zálohování knihovny si věnujte chvíli ověřit podpisy těchto záloh, abyste věděli, že časem zůstanou nezměněny.