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í.