watchOS1の場合
watchOS1では、AppGroupを使えば、watch・iPhone間でUserDefaultsを共有できたらしい。
Watch Kit AppとiPhone App間でNSUserDefaultsを使ってデータ共有をする - NSBlogger
watchOS2以降
watchOS2からはAppGroup使っても共有できなくなった。
nsuserdefaults - Swift UserDefault :sharing data via share group doesn't work - Stack Overflow
watch側でUserDefaultsを使うこと自体はできる。WatchConnectivityでiPhoneからwatchにデータを送って、watch側のUserDefaultsに書き込むしかないみたい。
謎
公式のプログラミングガイドには以下の記述がある。
iOSが自動的に、iOSアプリケーションの環境設定データ(読み取り専用のコピー)を、Apple Watchに転送するようになっています。WatchKitエクステンションはNSUserDefaultsオブジェクトを使って環境設定を読むことができますが、デフォルト設定を格納しているデータベースを、直接書き換えることはできません。
watchOSアプリケーション:プログラミングガイド:データの共有
App Programming Guide for watchOS: Sharing Data
が、試したところ、iPhone側のUserDefaultsをwatch側から参照することはできなかった。
環境設定データというのはUserDefaultsのことではないのだろうか。
もし何か分かる人いたら教えてください