Allo stato attuale della Guarda di estensione di Apple:
È possibile condividere le informazioni tra appliation principale iOS e WatchKit Extension. Utilizzare i gruppi di app e NSUserDefaults per accedere agli oggetti di informazioni condivise.
È non è possibile eseguire codice dalla tua app iOS che viene attivata da azioni su Apple Watch.
Almeno non ancora.
EDIT: Come di Xcode 6.2 Beta 2
Ora è possibile comunicare con il genitore app iOS di Apple Watch.
In Extension WatchKit chiamare l'applicazione padre tramite openParentAppentApplicion
. Uno può passare un dizionario di valori all'applicazione padre e l'applicazione genitore può restituire un dizionario di valori.
Watchkit Estensione:
// Call the parent application from Apple Watch
// values to pass
let parentValues = [
"value1" : "Test 1",
"value2" : "Test 2"
]
WKInterfaceController.openParentApplication(parentValues, reply: { (replyValues, error) -> Void in
println(replyValues["retVal1"])
println(replyVaiues["retVal2"])
})
iOS App:
// in AppDelegate.swift
func application(application: UIApplication!, handleWatchKitExtensionRequest userInfo: [NSObject : AnyObject]!, reply: (([NSObject : AnyObject]!) -> Void)!) {
// retrieved parameters from Apple Watch
println(userInfo["value1"])
println(userInfo["value2"])
// pass back values to Apple Watch
var retValues = Dictionary<String,String>()
retValues["retVal1"] = "return Test 1"
retValues["retVal2"] = "return Test 2"
reply(retValues)
}
La tua domanda è troppo ampia. Si prega di essere più specifici con le domande. Come da documentazione, avrai un'app principale che funziona sul telefono, un'estensione per app che funziona sul telefono e un pacchetto di watchkit che sono risorse trasferite sull'orologio per la visualizzazione sull'orologio. Nessuno del tuo codice viene effettivamente eseguito sull'orologio. Stai solo fornendo un pacchetto di risorse e dati all'orologio. –
È possibile utilizzare i gruppi di app o il https://github.com/mutualmobile/MMWormhole. – kelin