Instalace a používání watchOS v Xamarinu

WatchOS 4 vyžaduje macOS Sierra (10.12) s Xcode 9.

WatchOS 1 původně vyžadoval OS X Yosemite (10.10) s Xcode 7.

Upozornění

Aktualizace watchOS 1 nebudou přijaty po 1. dubnu 2018. Budoucí aktualizace musí používat sadu watchOS 2 SDK nebo novější; doporučuje se sestavení se sadou watchOS 4 SDK.

Project – struktura

Aplikace watch se skládá ze tří projektů:

  • Projekt aplikace Xamarin.iOS iPhone – jedná se o normální iPhone projekt, může to být libovolná šablona Xamarin.iOS. Aplikace Watch a její rozšíření budou součástí tohoto hlavního projektu.

  • Projekt Rozšíření kukátku – Obsahuje kód (například třídy kontroleru) pro aplikaci Watch.

  • Sledovat projekt aplikace – Obsahuje soubor scénáře uživatelského rozhraní se všemi prostředky uživatelského rozhraní aplikace Watch.

Ukázkové řešení katalogu Watch Kit vypadá v Xamarin.Studiu takto:

Stáhněte a spusťte ukázku WatchKitCatalog , abyste mohli začít. Obrazovky z ukázky najdete na stránce Ovládací prvky .

Vytvoření nového Project

Nelze vytvořit nové řešení kukátku... Místo toho můžete přidat aplikaci Watch do existující aplikace pro iOS. Pokud chcete vytvořit aplikaci kukátku, postupujte takto:

  1. Pokud nemáte existující projekt, napřed zvolte File New Solution (File > New Solution ) a vytvořte aplikaci pro iOS (například jedno zobrazení aplikace):

    Choose File > New Solution and create an iOS app

  2. Po vytvoření aplikace pro iOS (nebo plánujete použít existující aplikaci pro iOS) klikněte pravým tlačítkem na řešení a zvolte Přidat > nový Project... V okně Nový Project vyberte aplikaci watchOS > App > WatchKit:

    Select watchOS > App > WatchKit App

  3. Na další obrazovce můžete zvolit, který projekt aplikace pro iOS by měl obsahovat aplikaci kukátku:

    Choose which iOS app project should include the watch app

  4. Nakonec zvolte umístění pro uložení projektu (a volitelně povolenou správu zdrojového kódu):

    Choose the location to save the project

  5. Visual Studio pro Mac automaticky nakonfiguruje odkazy na projekt a nastavení Info.plist pro vás.

Vytvoření uživatelského rozhraní kukátku

Použití Xamarinu iOS Designeru

Poklikejte na rozhraní.storyboard aplikace kukátku a upravte ho pomocí iOS Designeru. Kontrolery rozhraní a ovládací prvky uživatelského rozhraní můžete přetáhnout do scénáře ze sady nástrojů a nakonfigurovat je pomocí panelu Vlastností :

Každý nový kontroler rozhraní byste měli dát třídu tak, že ji vyberete a potom zadáte název do panelu Vlastnosti (tím se automaticky vytvoří požadované soubory kódu C#):

Vytvoření segues pomocí Ctrl + přetažení z tlačítka, tabulky nebo kontroleru rozhraní do jiného kontroleru rozhraní.

Použití Xcode na Macu

K sestavení uživatelského rozhraní můžete pokračovat tak, že kliknete pravým tlačítkem na soubor Interface.storyboard a vyberete Otevřít v > Xcode Interface Builderu:

Open the Interface.storyboard in Xcode Interface Builder

Pokud používáte Xcode, měli byste postupovat stejným postupem pro sledování aplikací jako u normálních scénářů aplikací pro iOS (například vytváření vývodů a akcí pomocí Ctrl+přetažení do souboru záhlaví .h ).

Když scénář uložíte v Xcode Interface Builderu, automaticky přidá zásuvky a akce, které vytvoříte do souborů C# .designer.cs v projektu rozšíření kukátko.

Přidání dalších obrazovek v Xcode

Když do scénáře přidáte další obrazovky (nad rámec toho, co je součástí šablony ve výchozím nastavení) pomocí Tvůrce rozhraní Xcode , musíte ručně přidat soubory kódu jazyka C# pro každý nový kontroler rozhraní.

Přečtěte si pokročilé pokyny k přidání nových kontrolerů rozhraní do scénáře.

Xamarin iOS Designer to provede automaticky, nevyžaduje se žádný ruční postup.

Sestavování

Projekt, který obsahuje buildy aplikace pro kukátky, jako jsou jiné projekty pro iOS. Proces sestavování bude mít za následek aplikaci iPhone (.app), která obsahuje rozšíření kukátek (.appex), které zase obsahuje aplikaci pro kukátku bez kódu (.app).

Zahájení

Aplikace pro sledování můžete spustit v simulátoru pomocí Visual Studio pro Mac nebo Visual Studio (spustí se na hostiteli buildu Mac).

Spuštění aplikace WatchKit má dva režimy:

  • normální režim aplikace (výchozí) a
  • Oznámení (která vyžadují datovou část testovacího oznámení ve formátu JSON).

Podpora Xcode 8

Po instalaci Xcode 8 (nebo novějšího) jsou simulátory Apple Watch oddělené od simulátorů iOS (na rozdíl od Xcode 6, kde se zobrazují jako externí displej). Když vyberete projekt aplikace Watch a nastavíte ho jako spouštěcí projekt, zobrazí se v seznamu simulátorů iOS simulátory , ze které si můžete vybrat (jak je znázorněno níže).

Selecting the Simulator type

Při spuštění ladění by se měly spustit dva simulátory – simulátor iOS a simulátor Apple Watch. Pomocí Command+Shift+H přejděte do nabídky kukátek a hodinových tváří; a pomocí nabídky Hardware nastavte Force Touch Pressure. Posouvání na trackpadu nebo myši se simuluje pomocí digitální koruny.

Řešení potíží

Následující chyba se zobrazí ve výstupu aplikace , pokud se pokusíte spustit do simulátoru, který nemá spárované hodinky:

error MT0000: Unexpected error - Please file a bug report at https://github.com/xamarin/xamarin-macios/issues/new
error HE0020: Could not find a paired Watch device for the iOS device 'iPhone 6'.

Pokyny ke konfiguraci simulátorů najdete na fórech společnosti Apple , pokud výchozí nastavení nefunguje.

Xcode 6 a watchOS 1

Před spuštěním nebo laděním aplikace musíte před spuštěním nebo laděním aplikace nastavit projekt rozšíření kukátkuna Project spuštění. Aplikaci kukátku nemůžete spustit samotnou a pokud zvolíte aplikaci pro iOS, spustí se v simulátoru iOS jako normální.

Ve výchozím nastavení se aplikace kukátek spustí v normálním režimu aplikace (ne v režimu rychlých zpráv nebo oznámení) z příkazů spustit nebo ladit Visual Studio pro Mac.

Pokud používáte Xcode 6, může externí displej aktivovat jenom iPhone 5, iPhone 5S, iPhone 6 a iPhone 6 Plus pro Apple Watch – 38mm nebo Apple Watch – 42mm, kde se budou zobrazovat aplikace kukátek.

Poznámka

Mějte na paměti, že obrazovka kukátko se automaticky nezobrazí v simulátoru iOS při použití Xcode 6. Pomocí nabídky Externí zobrazení hardwaru > zobrazte obrazovku kukátek.

Spuštění režimu oznámení

Informace o zpracování oznámení v kódu najdete na stránce Oznámení .

Visual Studio pro Mac může spustit aplikaci kukátku s režimy spuštění oznámení pro oznámení:

Klikněte pravým tlačítkem na projekt aplikace Watch a zvolte Spustit s > vlastní konfigurací...:

Running a Custom Configuration

Otevře se okno Vlastní parametry , ve kterém můžete vybrat oznámení (a zadat datovou část JSON), a pak stisknutím klávesy Spustit spusťte aplikaci kukátka v simulátoru:

Setting the Notification and Payload

Ladění

Ladění se podporuje v Visual Studio pro Mac i v Visual Studio. Při ladění v režimu oznámení nezapomeňte zadat soubor JSON oznámení. Tento snímek obrazovky ukazuje zarážku ladění, která se dostane do aplikace kukátku:

This screenshot shows a debug breakpoint being hit in a watch app

Po provedení pokynů ke spuštění skončíte s aplikací kukátku spuštěnou na simulátoru iOS (Kukátku). V režimu oznámení můžete vybrat ladicí > systémový protokol (CMD + /) a použít Console.WriteLine v kódu.

Ladění obslužných rutin událostí životního cyklu

Soubory šablon watchOS (například InterfaceController, , ExtensionDelegateNotificationControlleraComplicationController) mají již implementované požadované metody životního cyklu. Přidejte Console.WriteLine volání a přečtěte si výstup aplikace , abyste lépe porozuměli životnímu cyklu událostí.