Sdílet prostřednictvím


Práce s nadřazenou aplikací watchOS v Xamarinu

Existují různé způsoby komunikace mezi aplikací watch a aplikací pro iOS, se kterou je součástí:

  • Aplikace Watch můžou spouštět kód v nadřazené aplikaci na i Telefon.

  • Rozšíření kukátku můžou sdílet umístění úložiště s nadřazenou aplikací i Telefon.

  • Předáním dat z oznámení do aplikace kukátku odešlete uživateli konkrétní kontroler rozhraní v aplikaci.

Nadřazená aplikace se také někdy označuje jako kontejnerová aplikace.

Sdílené úložiště

Pokud nakonfigurujete skupinu aplikací, můžou rozšíření pro iOS 8 (včetně rozšíření kukátek) sdílet data s nadřazenou aplikací.

NSUserDefaults

Následující kód lze napsat jak v rozšíření aplikace kukátku, tak v nadřazené aplikaci i Telefon aby mohly odkazovat na společnou sadu NSUserDefaults:

NSUserDefaults shared = new NSUserDefaults(
        "group.com.your-company.watchstuff",
        NSUserDefaultsType.SuiteName);

// set values
shared.SetInt (2, "count");
shared.Synchronize ();

// get values
shared.Synchronize ();
var count = shared.IntForKey ("count");

Soubory

Aplikace pro iOS a rozšíření kukátek můžou také sdílet soubory pomocí společné cesty k souboru.

var FileManager = new NSFileManager ();
var appGroupContainer =
            FileManager.GetContainerUrl ("group.com.your-company.watchstuff");
var appGroupContainerPath = appGroupContainer.Path;
Console.WriteLine ("agcpath: " + appGroupContainerPath);
// use the path to create and update files

Poznámka: Pokud je null cesta, zkontrolujte konfiguraci skupiny aplikací a ujistěte se, že jsou správně nakonfigurované zřizovací profily a byly staženy nebo nainstalovány na vývojovém počítači.

Další informace najdete v dokumentaci k funkcím skupiny aplikací.