これに関するいくつかの質問を見て、提供されたすべての回答を試しましたが、まだうまくいきません。
iPhone アプリとその WatchKit 拡張機能の間でいくつかの小さなデータ (文字列と BOOL) を共有しようとしています。(違いがある場合、情報は WK アプリの GlanceController によって読み取られています)
開発者サイトからアプリ グループ (group.com.theYawns.Sorcerers-Apprentice) を作成しました。「アプリ ID」を見ると、アプリ用に 2 つの同一の ID (com.theYawns.Sorcerers-Apprentice) と拡張用に 1 つ (com.theYawns.Sorcerers-Apprentice.watchkitextension) があるように見えます。これらのそれぞれで「アプリ グループ」が有効になっており (開発と配布の両方で)、アプリ ID を編集するとアプリ グループが選択されます。
アプリと拡張機能の両方の機能で「アプリ グループ」をオンにしました。ビルドごとではなく、1 日に数回、[機能] タブにアクセスして見ると、資格ファイルに「アプリ グループを追加する」資格を示す赤い感嘆符が表示されます。資格ファイルを見ると資格があり、[問題を修正] をクリックすると赤い感嘆符がチェックマークに変わります。しかし、これを 1 日に複数回行う必要があるという事実は、何かがおかしいのではないかと懸念しています。
XCode の設定でプロビジョニング プロファイルを何度も更新しましたが、資格の下にアプリ グループのアイコンが表示されませんが、ホバーすると表示されるツールチップにアプリ グループが表示されます。
私のアプリと拡張機能の両方で、ユーザーのデフォルトへの参照を取得します
NSUserDefaults *sharedAppDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.theYawns.Sorcerers-Apprentice"];
[sharedAppDefaults synchonize]
また、フラッシュされていない場合に備えて、各書き込みの後、WatchKit が読み取りを試みる前にa を追加しようとしました。(違いはありませんでした)。
私の WatchKit 拡張バンドル ID は、別のスレッドで見た回答の 1 つである iPhone アプリ バンドル ID とは異なります。
また、10 秒ごとにグランスを更新する NSTimer を追加したので、変更の取得にタイミングの問題があった場合は、更新サイクル 1 つか 2 つ後に自動的に解決されると思いますが、そうではありません。
本当に困惑しています...他のスレッドからの回答によって他の人が問題を解決したようですが、私にとってはうまくいきませんでした。
私が検索した他のスレッドは次のとおりです。