Teilen über


Arbeiten mit der übergeordneten WatchOS-Anwendung in Xamarin

Es gibt verschiedene Möglichkeiten, zwischen der Watch-App und der iOS-App zu kommunizieren, mit der sie gebündelt ist:

  • Beobachten Sie, dass Apps Code für die übergeordnete App auf dem i Telefon ausführen können.

  • Überwachungserweiterungen können einen Speicherort für die übergeordnete i Telefon-App freigeben.

  • Verwenden Sie die Übergabe, um Daten aus einer Benachrichtigung an die Überwachungs-App zu übergeben, und senden Sie den Benutzer an einen bestimmten Schnittstellencontroller in der App.

Die übergeordnete App wird manchmal auch als Container-App bezeichnet.

Freigegebener Speicher

Wenn Sie eine App-Gruppe konfigurieren, können iOS 8-Erweiterungen (einschließlich Überwachungserweiterungen) Daten für die übergeordnete App freigeben.

NSUserDefaults

Der folgende Code kann sowohl in der Watch-App-Erweiterung als auch in der übergeordneten i Telefon-App geschrieben werden, sodass sie auf einen gemeinsamen Satz von 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");

Dateien

Die iOS-App- und Überwachungserweiterung kann Dateien auch mithilfe eines gemeinsamen Dateipfads freigeben.

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

Hinweis: Wenn der Pfad null dann die App-Gruppenkonfiguration überprüft, um sicherzustellen, dass die Bereitstellungsprofile ordnungsgemäß konfiguriert wurden und auf dem Entwicklungscomputer heruntergeladen/installiert wurden.

Weitere Informationen finden Sie in der Dokumentation zu App-Gruppenfunktionen.