2015-07-03 11 views
5

La mia app iOS invia informazioni tempestive tramite il framework WatchConnectivity. Il lato ricevente implementa il delegato di WCSession.WatchOS2 WCSession Quanti delegati possono avere WCSession in WatchKitExtension?

Ho 2 controller di interfaccia che richiedono le informazioni inviate da WCSession.

Uno è il glanceInterfaceController e l'altro è il mio mainInterfaceController.

Possono essere assegnati a entrambi i delegati e entrambi ricevono l'utente Info o applicationContext inviati dalla mia app iOS allo stesso tempo? oppure può essere assegnato un solo delegato WCSession e i miei controllori devono ottenere i dati dall'oggetto che è stato assegnato?

Grazie!

+0

Perché non lo provi? È abbastanza semplice per scrivere il codice. Dimmi se hai bisogno di aiuto. Inoltre, si prega di segnalare e fammi sapere come è andata. – Philip

risposta

8

WCSession supporta un solo delegato alla volta. Se desideri che vengano notificate più parti del tuo codice quando c'è un nuovo contenuto in entrata, devi creare una classe wrapper che abbia richiamate simili a WCSessionDelegate ma supporti più osservatori o potresti utilizzare le notifiche locali per inoltrare i contenuti. Forse meglio; avere il tuo WCSessionDelegate aggiornare l'archivio dati dell'app e quindi notificare le parti del tuo codice leggendo dall'archivio dati che è stato aggiornato in modo che possano aggiornare le loro viste?

Problemi correlati