Emulátor iPadu a iPhonu (na MacOS)

[Aktualizováno]: obsahuje nový způsob stažení a spuštění iOS Simulátoru. V textu jsem ponechal i části původního textu pro případ, že nový postup není možné zcela použít pro starší verze MacOS. Současný text platí pro MacOS X Yosemite.

Pokud chcete emulovat a debugovat své stránky na iPadu a iPhonu a máte k dispozici libovolný počítač Mac (iMac, MacBook apod.), můžete si do něj nainstalovat emulátor.

Instalace Xcode

Nejprve bude potřeba získat alikaci App store, což znamená upgradovat alespoň na Snow Leopard verze 10.6.6 (Následně můžete zdarma updatovat na verzi Mavericks). V App Store najděte aplikaci XCode a zdarma ji nainstalujte.

Apple se řídí pravidlem, že každá verze Xcode podporuje pouze poslední iOS (a lze doinstalovat ještě předposlední). Výjimka nastane pouze v případě, že vyjde nová verze iOS (zpravidla iOS X.1) aniž by bylo nutné vydat novou verzi Xcode. Proto je potřeba stáhnout různé verze Xcode podle toho, jaké verze iOS potřebujete testovat.

Jděte tedy na stránku https://developer.apple.com/downloads, přihlašte se a stáhněte všechny potřebné Xcode (vždy v poslední vydané verzi):

  • Xcode 7.2 (iOS 9.2, Apple TV 9, Apple Watch 2; stáhnout lze iOS 9.0, 9.1 a iOS 8.1 – 8.4)
  • Xcode 7.0.1 (iOS 9.0; stáhnout lze iOS 8.1 – 8.4)
  • Xcode 6.4 (iOS 8.4, stáhnout lze 7.1 a 8.1 – 8.3)
  • Xcode 6.1.1 (iOS 8.0 a iOS 7.1)
  • Xcode 5.1.1 (iOS 7.1, iOS 6.1 a iOS 6.0)
    • není podporován v El Capitan
  • Starší verze již nejsou v Yosemite kompatibilní

Po stažení otevřete jednotlivé balíčky (DMG) a přetáhněte ikonu Xcode do složky Aplikace (či na plochu nebo kamkoliv jinam). Klikněte na jméno ikony (nebo stiskněte Enter) a přejmenujte ji podle příslušné verze (např. „Xcode 6“). Tím zajistíte, že se jednotlivé verze nebudou přepisovat. Následně postupujte pro každou verzi podle následujícího popisu.

Poznámka: v MacOS jsou aplikace ve skutečnosti složky s příponou *.app; proto mohou v sobě obsahovat soubory nebo dokonce další aplikace.

Cesta k Xcode

Pokud použijete tento způsob s přejmenováním Xcode aplikace, můžete narazit na problém, že některé externí aplikace nebudou moci s Xcode pracovat. Budete tedy muset nastavit správnou cestu k Xcode verzi, kterou chcete používat jako primární.

Nejprve spusťte Terminál (Aplikace/Utility/Terminál) a zadejte příkaz:

xcode-select --print-path

Příkaz by měl vypsat cestu k Developer složce uvnitř Xcode aplikace (např. /Applications/Xcode.app/Contents/Developer). Pokud vypíše něco jiného (např. cestu k CommandLineTool) nebo neexistujícího (např. Xcode.app neexistuje, protože jste ji přejmenovali), použijte v terminálu příkaz:

sudo xcode-select -switch /Applications/<jméno Xcode aplikace>.app/Contents/Developer

Do cesty uveďte správné jméno aplikace, které chcete použít; např. pokud máte aplikace Xcode5 a Xcode6, použijte cestu /Applications/Xcode6.app/Contents/Developer. Pro provedení příkazu musíte zadat heslo správce počítače (stejné heslo které zadáváte např. při instalaci aplikací nebo změně nastavení).

Tip: v Terminálu můžete pomocí Tabulátoru nechat doplňovat složky v cestě – stačí napsat pár prvních písmen.

Nalezení emulátoru

Control-klikněte (nebo PTM nebo double-tap) na ikonu XCode a zvolte Show package content (Zobrazit obsah balíčku). V balíčku nyní najdete cestu k aplikacím (viz níže), kde je i iOS Simulator. Ten buď připněte do Docku (přetažením na Dock) nebo vytvořte Alias ve složce Aplikace (přetažení s ⌥⌘; tedy držte ALT+CMD neboli Option + Command).

  • Xcode 5 a starší: /Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications
  • Xcode 6 a novější: /Contents/Developer/Applications

Spusťte požadovanou verzi Xcode a v menu Xcode otevřete Open Developer Tools a klikněte na iOS Simulator. Tím se emulátor spustí a zobrazí se v liště. Control-klikněte (nebo PTM nebo double-tap) na ikonu v liště a zvolte Volby a Ponechat v Docku. Tím budete moci spouštět emulátor i po ukončení Xcode. Pokud nechcete nechávat emulátor v docku, zvolte z menu Volby naopak Zobrazit ve Finderu a vytvořte zástupce v požadované složce (Aplikace, na ploše apod.) přetažení s ⌥⌘ (držte ALT+CMD neboli Option + Command).

U Xcode 6 a novější stačí pro spuštění Simulatoru Control-click (nebo PTM ) na ikonu v docku a z Open developer tool zvolit Simulator.

U Xcode 7 máte na výběr Simulator (už bez „iOS“ označení), který umí emulovat iPhone 4S až 6S a iPad 2 a novější (v menu Hardware/Device/iOS 9) nebo Apple TV (menu Hardware/Device/tvOS 9), a Simulator Watch, který umí emulator Apple hodinky (v menu Hardware/Device můžete volit velikost hodinek).

Stažení starších verzí

Momentálně jsou k dispozici emulátory pro iOS 8, iOS 7.1, iOS 7.0 a iOS 6.1 a v budoucnu budou pravděpodobně i další (novější – po jejich vydání). V novějších verzích již není možné stáhnout starší verze, např. v Xcode 6 je již jen iOS 8 a iOS 7.1.

S Xcode se vždy stáhne jen ten nejnovější iOS emulátor. Pro stažení starších verzí musíte Xcode spustit (ze složky Aplikace) a v menu Xcode zvolit Preferences. Přejděte na záložku Downloads a pod Components klikněte pro stažení požadované verze.

Alternativně, trochu složitěji, můžete v Simulatoru kliknout na Hardware – Device – Manage Devices, v okně kliknou na + vlevo dole a pod iOS Version zvolit Download more simulators.

Pokud se vám po stažení souboru pouze zobrazí chyba „Je požadována autorizace pro instalaci balíčku“ („Authorization is required to install the package“), ukončete Xcode, spusťte Terminál a zadejte:

sudo /Applications/Xcode.app/Contents/MacOS/Xcode

Adresu „/Aplications/Xcode.app“ nahraďte za skutečné jméno, pokud jste ho přesunuli nebo přejmenovali, např.:

sudo /Devel/Xcode 7.app/Contents/MacOS/Xcode

Z nějakého důvodu se mi obrazovka Downloads v Xcode 6 během stahování nepřekreslovala, takže to vypadalo, jako že se nic nestahuje. Stačí přepnout na vedlejší záložku (např. Locations) a pak zpět a zobrazí se aktuální stav.

Spuštění emulátoru

Po spuštění emulátoru můžete v menu Hardware/Device přepínat mezi iPhone 3GS (iPhone), iPhone 4 (iPhone 3.5″), iPhone 5 (iPhone 4″), iPad 1 (iPad) a iPad 3/Air (iPad Retina).

V Xcode 6 jsou již simulátory pojmenované přímo podle modelu; např. iPhone 6, iPhone 6 Plus, iPad Air, apod.

iPhone 3GS je dostupný, jen pokud máte stažen iOS 6.1. Pokud máte stažen iOS 7.x, může být také dostupný v 64-bitové verzi. Pokud máte staženo více verzí (např. iOS 6 a iOS7), každá položka v menu Device bude mít podmenu, kde můžete přepínat verze OS. V Xcode 6 naopak nejprve volíte verzi iOS a pod ní je seznam nastavených emulátorů.

Na MacOS Yosemite je nová obrazovka Manage Devices, kde můžete přímo vytvářet vlastní kombinace Hardwaru a Softwaru (tedy verze iPhonu/iPadu a verze iOS).

V menu Hardware najdete i další položky jako je otáčení (Rotate), zatřesení (Shake) a HW tlačítka (Home a Lock).

Pod menu Window pod položkou Scale můžete měnit zvětšení. To je šikovné hlavně u iPhone 6 a 6 Plus, které svým základním rozlišením přesahují rozlišení většiny iMaců a MacBooků, ale na běžné debugování vám stačí zoom 50%. Naopak pokud chcete ověřit, že se vám správně načítají responzivní obrázky, můžete zvětšit na 100%.

Dva prsty současně můžete simulovat držením ⌥ (ALT, Options). Střed je vždy uprostřed obrazu a pomocí kurzoru můžete prsty oddalovat, přibližovat nebo otáček. Kliknutím pak simulujete stisk (tap) nebo držení (hold).

Debugování

Stránky zobrazené v emulátoru je možno debugovat pomocí Safari.

Pro debugování iOS8 potřebujete MacOS Yosemite.

Spusťte Safari v emulátoru, přejděte na stránku, kterou chcete debugovat, a pak spusťte Safari v hostitelském MacOS. V menu Safari zvolte Settings (Předvolby), přejděte na Advanced (Pokročilé) a zaškrtněte Show Developer tools (Zobrazit nabídku Vývojář).

Zavřete nastavení a v menu Developer (Vývojář) najděte položku iPhone Simulator nebo iPad Simulator (podle toho, co je zrovna spuštěno). Klikněte na požadovanou stránku (která musí být otevřena v Safari v emulátoru) a otevře se vám Web Inspector (Inspektor webu) pro emulátor.

V debuggeru pak můžete dělat všechny obvyklé věci – prohlížet zdroje webu (Resources), prozkoumávat DOM (Inspect) debugovat skripty (ResourcesScripts) nebo spouštět příkazi v konzoly (Console).

Otočení obrazu MacBooku

Pokud debugujete na MacBooku a nevejde se vám iPhone v Portrait (na výšku) na obrazovku, můžete otočit obraz MacBooku a získat tím vhodnější rozlišení.

Nejprve v horní liště klikněte na ikonu jablíčka (obdoba nabídky Start z Windows) a zvolte System Settings (Předvolby systému). Nyní v menu System Settings (Předvolby systému) zvolte Quit System Settings (Ukončit Předvolby systému). Tím jste se ujistili, že nejsou uloženy v paměti.

Nyní postupujte stejně, ale celou dobu držte ⌥⌘ (ALT+CMD neboli Option + Command). Spusťte znovu System Settings (Předvolby systému) a klikněte na Monitors (Monitory). Teď můžete pustit ⌥⌘ a pod položkou Rotation (Otočení) zvolit 90° nebo 270° (podle toho, co je pro vás výhodnější).

Po otočení obrazu doporučuji používat externí (USB nebo BT) myš, protože ovládání integrovaným touchpadem je značně matoucí.

Poznámka: u externím monitorů je nabídka otáčení přítomna vždy, ale otáčet integrovaným monitorem není častá činnost a proto není v základní nabídce zobrazena.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *