So stellen Sie einen Kommunikationskanal zwischen Apple Watch Extension / App und iOS App her

7

Ich untersuche das WatchKit SDK.

Wenn ich eine WatchKit-App habe, ist es möglich, Werte (z. B. Text, Einstellungen) aus der iPhone App in der WatchKit App zu setzen? Kann ich Funktionen in der WatchKit App-Erweiterung von der iPhone App aus aufrufen?

Wenn jemand das schaffen würde, könnte er ein Beispiel schreiben? Danke!

    
cujo30227 26.11.2014, 08:12
quelle

5 Antworten

9

Sie können App Group und sharedDefaults verwenden, um Daten zwischen der WatchApp / Extension und der App auf dem Telefon freizugeben. siehe Beispiel: WatchKit SDK ruft keine Daten von NSUserDefaults ab

Studieren auf iOS8 Extension / App Gruppen / sharedDefaults und Watchkit Erweiterung wird mehr Sinn machen.

Dieses Beispiel nimmt ein UIImage aus dem Shinobi-Diagramm, speichert es als Bild als Standard. Dann nimmt die Erweiterung das Bild über die Standardeinstellungen auf und zeigt es auf der Uhr an

Ссылка

Dieser verwendet Multipeer-Konnektivität, um die Uhr mit dem Telefon sprechen zu lassen.

Ссылка

aber das verwendet Bluetooth und ich nehme an, dass das Watch OS auch mit dem Telefon über Bluetooth kommuniziert, also nicht sicher, ob beide erlaubt sind.

Wir haben noch keine Geräte zum Testen, also ist die / swatches-App nur ein Watch-Simulator, der mit dem iPhone-Simulator auf demselben Mac kommuniziert.

Wenn Sie jemals Low-Level-AV-Programmierung gemacht haben, wissen Sie, dass die App auf dem Simulator ausgeführt werden kann, aber auf dem Gerät nicht funktioniert, da der Simulator eine Mac OSX-Medienschicht schummeln kann. Kann für Bluetooth dasselbe sein.

andere Beispiele

Ссылка

    
brian.clear 05.12.2014, 16:59
quelle
3

Es gibt mehrere Lösungen: CoreData , NSKeyedUnarchiver und NSUserDefaults . Mit einem gemeinsamen Hintergrund für die Freigabe der gemeinsamen Datenressource (Datenbank-, Datei- oder Benutzerstandardeinstellungen) aktiviert dies Anwendungsgruppenfunktionen für beide Zielprojekteigenschaften.

Im folgenden Beitrag wird erklärt, wie man es mit Standardeinstellungen macht und Sie können auch herunterladen das Demo-Projekt.

    
quelle
3

Mit watchOS2 unterstützt Apple jetzt Watch Connectivity Framework, um Informationen von der Überwachungserweiterung an die App und umgekehrt weiterzugeben.

Aus Apples Dokumenten entnommen

Kommunizieren mit Ihrer Companion iOS App

Mit dem Watch Connectivity-Framework können Sie einen bidirektionalen Kommunikationskanal zwischen Ihrer WatchKit-Erweiterung und Ihrer begleitenden iOS-App erstellen. Verwenden Sie diesen Kanal, um Aktivitäten zwischen den beiden Prozessen zu koordinieren. Sie können dieses Framework beispielsweise verwenden, um aktualisierte Informationen von Ihrer iOS-App an Ihre WatchKit-Erweiterung zu übertragen. Das Framework bietet Optionen zum Übertragen von Daten im Hintergrund oder während beide Apps aktiv sind und ersetzt die vorhandene Methode openParentApplication: reply: der Klasse WKInterfaceController.

Weitere Informationen zu den Klassen des Watch Connectivity-Frameworks finden Sie unter Referenz zum Connectivity Framework .

Aus Apples Entwicklerbibliothek

    
Emel 09.07.2015 14:39
quelle
2

Sie können diese Bibliothek sehen Ссылка

Es wird eine Nachricht zwischen iOS-Apps und -Erweiterungen ausgetauscht.

    
mohamedghonemi 25.12.2014 14:04
quelle
1

sieht so aus, als ob die Links mit brain.clear nicht auf das richtige Ziel für ShinobiChart Beispiel zeigen

Ссылка

    
nakeer 20.02.2015 21:42
quelle

Tags und Links