Mnoho nadšenců pro Android používá vlastní obnovení, jako je TWRP a ClockworkMod, k flashování ROM a modů, pořizování a obnovování úplných záloh zařízení a dokonce ke správě svých souborů pomocí plně vybaveného správce souborů AROMA. A zatímco většina uživatelů by ve skutečnosti nemusela pořizovat snímky obrazovky v režimu obnovy, my, blogeři, vývojáři vlastních obnov a aplikací založených na AROMA, stejně jako návrháři motivů pro obnovu tuto funkci často potřebujeme, aby ukázali, co recenzují nebo na čem pracují. . V následujícím textu vás provedeme procesem snadného pořizování snímků obrazovky vašeho zařízení Android, když je spuštěno v režimu obnovení, bez ohledu na to, jaké vlastní obnovení je spuštěno.
Na rozdíl od běžného spuštění systému Android standardní kombinace tlačítka pro snížení hlasitosti + vypínač nefunguje pro pořízení snímku obrazovky při obnově. Dříve nástroj DDMS Android SDK fungoval pro tento účel dobře, ale od posledních několika aktualizací už tomu tak nebylo.
Jediným fungujícím řešením, o kterém jsem dosud věděl, bylo ručně uchopit nezpracovaná data framebufferu a poté je zpracovat pomocí nástroje příkazového řádku ffmpeg, aby se získal požadovaný obrázek. Toto řešení má však vážné upozornění: nejedná se o jediný univerzální příkaz pro všechna zařízení Android, protože různá zařízení a obnovy používají různé formáty pixelů pro svůj framebuffer a příkaz je také třeba upravit, aby zohlednil nativní rozlišení zařízení. a krokový faktor v surovém obrazu. Osobně jsem si prošel noční můrou, kdy jsem trávil hodiny tím, že jsem se snažil zjistit tyto parametry pro některá ze svých zařízení, když jsem psal některé z mých průvodců zahrnujících snímky obrazovky obnovy.
To, co brzy uvidíme, je úžasný malý nástroj od XDA Member makers_mark, který udělá práci za vás a všechny takové komplikace udrží v pozadí.
Table of Contents
Snímek obrazovky Meet Recovery
Recovery Screenshot je skript (od tohoto psaní k dispozici pouze pro Windows), který využívá ADB a ffmpeg k vytažení surového framebufferu z vašeho zařízení a následně jej odpovídajícím způsobem zpracuje, aby vám poskytl snímek obrazovky ve formátu PNG.
Než budete moci začít pořizovat snímky obrazovky pro obnovení, musíte nakonfigurovat nástroj pro vaše zařízení. Takže, pojďme začít.
Nastavení Věci Up
Než budete pokračovat, ujistěte se, že jste zařízení restartovali do režimu obnovení, připojili jej k počítači pomocí kabelu USB a nainstalovali pro něj potřebné ovladače.
Stáhněte si snímek obrazovky obnovení a extrahujte obsah staženého souboru ZIP na libovolné vhodné místo ve vašem počítači. Dále spusťte nástroj pomocí souboru RUNrs.bat ve složce. Skript vám nabídne následující možnosti:
Vyberte první možnost, tj. proveďte nastavení konfigurace stisknutím 1. Poté budete dotázáni na rozměry obrazovky vašeho zařízení v pixelech. Ujistěte se, že zadáváte kratší rozměr jako šířku a delší jako výšku.
Recovery Screenshot poté vytáhne framebuffer z vašeho zařízení, zpracuje jej v několika pixelových formátech pomocí ffmpeg a vloží zpracované soubory PNG do složky „Pixel_formats“ ve složce, kam jste nástroj extrahovali.
Nyní přejděte do složky Pixel_formats a prohlédněte si všechny tyto obrázky. Všimnete si, že většina z nich vypadá legračně, což je naprosto normální; byly zpracovány pomocí pixelového formátu odlišného od formátu vašeho zařízení. Zde musíte hledat obrázek, který vypadá správně, poznamenejte si jeho název (což je název jeho pixelového formátu) a pokračujte stisknutím libovolné klávesy.
Pokud jste ve složce našli správný obrázek, pokračujte a stisknutím 1 dokončete nastavení. Pokud jste tentokrát neměli štěstí, stačí stisknout 2 a nástroj vyzkouší ještě více, méně běžně používaných formátů. V takovém případě znovu vyhledejte ve stejné složce desítky nových obrázků, které tam byly přidány, a poznamenejte si jejich název, až najdete ten správný.
Poté, co najdete správný pixelový formát, zadejte jej na další obrazovce přesně tak, jak jej vidíte v názvu správného souboru (bez přípony .PNG). Například při našem testování pomocí zařízení Nexus 5 byl správný obrázek rgb0.png, a tedy správný formát pixelů byl rgb0.
Poté, co zadáte správný formát pixelů pro vaše zařízení a stisknete Enter, jste s konfigurací hotovi – nyní je čas začít pořizovat snímky obrazovky pro obnovení. Vaše nastavení se uloží a při opětovném spuštění již nebudete muset skript konfigurovat pro stejné zařízení.
Pořizování snímků obrazovky při obnově
Po dokončení počáteční konfigurace se při každém spuštění nástroje zobrazí následující možnosti.
Co by se zde mohlo zdát matoucí, by byla přítomnost tří možností pro uchopení framebufferu. Vysvětlení toho, jak funguje systém dvojitých framebufferů Androidu, je nad rámec této příručky a obrázek, který hledáte, může být v kterémkoli z framebufferů, takže bude dobré pokaždé zvolit třetí možnost, tj. oba framebuffery. Stačí stisknout 3 a Recovery Screenshot začne stahovat a zpracovávat oba framebuffery za vás.
Výsledné zpracované obrazové soubory budou umístěny do podsložky v hlavní složce skriptu a budou pojmenovány podle aktuálního data. Obrázky uvnitř budou pojmenovány podle aktuálního času a také podle framebufferu (horní nebo dolní).
Pamatujte, že když se pokusíte zachytit snímky obrazovky jiného zařízení, možná budete muset znovu nakonfigurovat nástroj. Chcete-li to provést, stačí stisknout 4 na hlavní obrazovce, resetovat nastavení a začít znovu. Pátá možnost, tj. ruční režim, nezahrnuje připojení zařízení v režimu obnovy a lze jej použít k ručnímu zadání nastavení a zpracování jakéhokoli souboru raw image jako zdroje.
Několik výsledků
Zde je několik snímků obrazovky zachycených v režimu obnovy pomocí skriptu. První je domovská obrazovka obnovy TWRP, druhá zobrazuje blikající průběh a třetí je správce souborů AROMA.
Opět, i když to není pro každého, protože příležitostní uživatelé a dokonce i většina pokročilých uživatelů nebude nikdy potřebovat pořizovat snímky obnovovací obrazovky, Recovery Screenshot se může ukázat jako záchrana pro lidi jako já, kteří si dříve museli projít potížemi s ručním vytahováním framebufferů a zpracování nezpracovaných obrázků pomocí příkazů ffmpeg pokaždé, když jsme potřebovali zkontrolovat vlastní obnovu nebo skript AROMA.
Stáhněte si snímek obnovy z XDA-Developers