以下のサイトを参考にapple watchとの通信をして見たのですが、この方法だと以下の様に書いているためViewControllerでviewDidLoadが呼び出された段階で通信される仕組みになりますよね?
https://dev.classmethod.jp/smartphone/iphone/watchos3-bg-refresh-3/#complete
Swift
1 2 override func viewDidLoad() { 3 super.viewDidLoad() 4 5 if (WCSession.isSupported()) { 6 let session = WCSession.default 7 session.delegate = self 8 session.activate() 9 } 10}
例えばiOSでUserDefaults.standardに保存してあったデータがwatchが起動された時に呼び出される等の仕組みは作れるでしょうか?今の段階だとwatchのアプリを呼び出すたびにiosのアプリを起動しなければならないと思うのですが、どうすればwatch起動時に実行できるでしょうか?
やりたい事としてはiosのアプリのUserDefaults.standardに保存してある文字列の配列をwatchアプリ起動時に読み込んで表示させる様にしたいです。現状その為には毎回一度iosのアプリを起動しなければなりません。
ーーー追記ーーー
一応バックグラウンドで通信をしているので毎回iosを起動しなければならない訳ではないですが、watchと繋がってない状態でiosで配列を変更して、アプリを閉じてしまったら、次にwatchアプリを起動する時その変更がiosの方を起動するまで反映されないと思うのですがそれは仕方がない事でしょうか?
あなたの回答
tips
プレビュー