質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

0回答

1205閲覧

SwiftでWatch Connectivityを使ったapple watchとの通信についてです。

Hayato1201

総合スコア220

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2018/09/22 13:45

編集2022/01/12 10:55

以下のサイトを参考に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の方を起動するまで反映されないと思うのですがそれは仕方がない事でしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問