2014-11-01

Apple iPhone 4 - iTunes chyba 0xE8000004 - vyřešeno

Dostal se mi do rukou iPhone 4 32GB, který nebyl aktivován a který vyžadoval připojení k iTunes. Po připojení však iTunes zaklásil chybu
iPhone nelze aktivovat, protože se vyskytla neznámá chyba 0xE8000004

vrátil se zpět do menu a připojený telefon ignoroval. Co tedy s tím?


Teď trochu naokolo: Po zkušenostech s aktivováním zahraničního iPhone 3GS, jsem získal docela dobrý přehled o iSvětě a říkám: Aktivace iOS 6 a vyššího pro blokovaný telefon je sice možná, ale českou SIM s takovým telefonem nerozchodíte, protože telefon je blokovaný v databázi operátora a nikoliv v telefonu, jak tomu bývalo před iOS 6. Nejjednodušší cestou zprovoznění je zaplatit některé internetové službě za odblokování, což se nemusí vždy vyplatit.

Naštěstí toto není mnou popisovaný příklad. Podařilo se mi dostat k iPhone z české distribuce. Je dobré si pro začátek procesu toto ověřit na této stránce (případně tady), kam zadáte číslo IMEI. iPhone pochází z ČR a tak jsem si ověřil, že problém aktivace je způsoben nějakou jinou chybou než blokováním SIM karty.


Pro začátek jsem telefon přepnul do Recovery režimu a provedl pomocí iTunes oficiální restore na nejvyšší dostupnou verzi iOSu. V tuto chvíli se již ví, že poslední verze 7.1.2 (11D257) bude pro iPhone 4 poslední. Tento proces je automatický, pouze pomocí iTunes.

Pro další kroky bude dobré mít po ruce IPSW obraz systému, ten se přes iTunes stáhne do složky:
%USERPROFILE%\AppData\Roaming\Apple Computer\iTunes\iPhone Software Updates
Kde naleznete příslušný soubor: Mimojiné tím také zjistíte, který iPhone máte (zde verze 3.1).
iPhone3,1_7.1.2_11D257_Restore.ipsw

Nicméně po celém tomto postupu stále existuje chyba 0xE8000004, ale již vím, že chyba není v telefonu a jeho firmwaru. 

Nyní krátce a souhrnně z dalšího postupu: Provedu downgrade systému na starší verzi, tu aktivuji a opět aktualizuji. Tím se pravděpodobně opraví nějaký špatný záznam někde u Applu nebo v přístroji a poté již bude aktivace bez chyby do dalšího zásahu do firmware.

Protože iOS není Android nelze si se systémem dělat vše podle libosti. Donwgrade jde pouze na tu verzi, která již v minulosti v telefonu byla a ke které je tedy uložen podpisový klíč Applu.

Tyto soubory se jmenují SHSH blobs a lze je zjistit a uložit přes prográmek TinyUmbrella (7.12)



Úskok stranou: TinyUmrella se mi nechtěla spustit, dokud jsem nevyměnil její knihovnu lib-win.jar z tohoto odkazu do složky
%USERPROFILE%\.shsh\.cache
Telefon mám připojen v běžném režimu kabelem, po kliknutí na Save SHSH se ve složce 
%USERPROFILE%\.shsh\.known_devices

vytvoří soubory *.shsh, které si zazálohujte a po zbytek života iPhonu pečlivě uchovávejte. To je pro tuto chvíli vše v programu TinyUmbrella, která jinak slouží k simulaci podpisového serveru Applu. Chtěl jsem ji využít pro zbytek aktualizačního procesu, ale celek nebyl funkční - při zapnutém TSS serveru padalo iTunes. 



Je vysoce nepravděpodobné, že byste tam neměli ani staré verze 4.x, naštestí nyní nezáleží na verzi, protože bude později přehrána novým iOSem.

Bylo tedy nezbytné využít aktualizace přes alternativní software a tím je program RedSn0w (0.9.15b3). 

Předem se rozhodněte, kterou z verzí iOSu na kterou máte SHSH soubor, budete do telefonu vracet. Protože RedSn0w je starší software, instaloval iOS 5.0.1, jehož instalační IPSW jsem si stáhnul ze seznamu iOSů. 
5.0.1 (4 GSM): iPhone3,1_5.0.1_9A405_Restore.ipsw
Pro usnadnění hledání, je dobré hledat pod kódovým značením u každé verze (např. 9A405) a také podle správné verze iPhonu, tu víte z prvního kroku, u mne je to iPhone 3,1.

Navigace v programu RedSn0w je následující.


  • Extras 
  • Even more
  • Restore
  • IPSW
    • vyberete požadovaný obraz IPSW
    • vyberete Ano a nebudete updatovat baseband
    • přepnete telefon podle instrukcí na obrazovce do DFU módu
    • proběhne exploitace
      • pokud dojde k chybě, postup opakujte
  • Local
    • zde zvolíte příslušný SHSH soubor k dané verzi iOSu
  • Next
    • a podle instrukcí na obrazovce necháte celý proces proběhnout
    • chvíli to trvá, tak do té doby do ničeho nezasahujte

Po zapnutí vyžaduje iPhone aktivaci přes iTunes, tentokráte se aktivace podaří a vy máte možnost pokochat se dřívější verzí v OS iPhonu.


Teď zbývá aktualizace na verzi 7.1.2. Pozor, nestačí provést k iTunes připojenému iPhonu běžnou aktualizaci firmware, protože se chyba bude opakovat. 

Je nutné provést aktualizaci v recovery režimu! Jak na to? Vypněte telefon, připojte k PC a stiskněte společně zapínací tlačítko a home button na tak dlouhou dobu, než se na displeji objeví obrázek kabelu a symbolu. 


iTunes nabídne samovolně obnovu přístroje. Se stisknutou klávesou Shift klikněte na 'Aktualizovat' a poté vyberte soubor 7.1.2 ipsw. Následně docela dlouho instalujete a už bez chyby 0xE8000004 aktivujete iPhone a projdete si úvodním tutoriálem. To je vlastně vše! Permanentní řešení nemám, pokud víte, či znáte důvod této chyby, napište mi.




Pokud se vám článek líbil, můžete mě podpořit na PayPalu či třeba zasláním Alzáků, přeci jenom jsem průkumem problému a nalezením jednoduchého řešení spotřeboval docela dost času. Doufám, že se vám aktivace podařila, případně mě můžete doplnit v komentáři. 

2 komentáře :

  1. Tato oprava zdá se není definitivní, po zásahu do firmwaru se provede opět deaktivace s chybou 0xE8000004. Takže opět do redsn0w a reload...

    Chybu "Couldn't upload iBSS" jsem řešil vypnutím a zapnutím redsn0w + měl jsem k tomu zapnutý TSS server, ale z logu se zdá, že nebyl použit. Každopádně jde o krátkodobou chybu.

    OdpovědětSmazat
  2. Ahoj, mam stejny problem, ale podle tvého navodu se mi nedaří. Duvod bude asi ten že mam SHSH jen jedno a to 7.1.2 .
    Nedokázal by jsi mi pomoct? děkuji předem :-)

    OdpovědětSmazat

Dotaz, připomínka, oprava?
(pokud máte problém s vložením příspěvku, vyzkoušejte to v prohlížeči Chrome)