Condividi tramite


Uso dell'applicazione padre watchOS in Xamarin

Esistono diversi modi per comunicare tra l'app watch e l'app iOS con cui è in bundle:

  • Guardare le app possono eseguire il codice nell'app padre nell'i Telefono.

  • Le estensioni del controllo possono condividere un percorso di archiviazione con l'app padre i Telefono.

  • Usa handoff per passare i dati da una notifica all'app watch, inviando l'utente a un controller di interfaccia specifico nell'app.

L'app padre viene talvolta definita anche app contenitore.

Archiviazione condivisa

Se si configura un gruppo di app, le estensioni iOS 8 (incluse le estensioni watch) possono condividere i dati con l'app padre.

NSUserDefaults

Il codice seguente può essere scritto sia nell'estensione dell'app watch che nell'app padre i Telefono in modo che possano fare riferimento a un set comune di 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");

File

L'app iOS e l'estensione watch possono anche condividere file usando un percorso di file comune.

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

Nota: se il percorso è null quindi controllare la configurazione del gruppo di app per assicurarsi che i profili di provisioning siano stati configurati correttamente e siano stati scaricati/installati nel computer di sviluppo.

Per altre informazioni, vedere la documentazione sulle funzionalità del gruppo di app .